java的学习:

初学者对Java的学习,上来的感觉都是比较难,感觉java的东西很多,如此多的类和接口。有时还弄不懂为啥实例化出一个int空数组为什么数组中默认都是0,实例化一个空字符串数组时(String),为什么数组每个值都默认为null。java的核心思想就是面向对象,可以把任何东西都可以看做是对象。java的三大特点继承、封装和多态。这些我一个初学者来说就好像是天书一样,其实我认为初学者根本没有必要完全理解这些东西,再说也很难会弄清楚这些问题。刚开始就一步一步的学着会使用java中的类,随着之后的学习,渐渐地就会明白面向对象是一种什么样的思想。学过C语言的,就会明白java和C语言思想的区别,一个是纯的面向对象,一个是纯的面向过程。学习java最重要的是会使用java中提供的很多类,Java的有些类在解决问题时会变得很方便,很好用,但对与C语言就不同了,有些算法就需要手动用最基本的去实现,没有必要把所有的类完全记住(这个几乎是不太可能的,除非你非常聪明,非常牛逼),熟悉是干什么用的就足够了,写java时随手带一个API文档,忘了可以去查一下怎么使用,这样用的多了,逐渐就能记住了。学过java的同学都会有一种感受,在写java界面的时候给非常的麻烦,一些布局的使用,感觉每一个按钮、标签、文本框都需要用new关键词实例化出来,这就是面向对象的特点都需要实例化对象。在学习Java时,我建议应该把运行java程序时内存的使用分析清楚,就是java中的堆内存和栈内存,简单说一下:1.java中的一些基本变量和对象的引用变量都是在栈内存中存储,当定义一个变量时,java就会在栈内存中分配一块空间,当程序执行到超出这个变量的作用域时,java就会释放掉栈内存中的空间给其他的变量使用。2.而堆内存,是用于存放用new关键词创建的对象。当这个对象使用完后,java的自动回收机制就会将这个对象作为垃圾回收掉,给下一个new出的对象使用。当学习阶段到了中上等水平式时,就会明白java中的三大特点继承、封装、多态的重要性,这些特性都可以让你的程序变得高效、清晰,并且在后期容易维护。在最后说一点java中的事务的重要性,在开发是,最常见的就是给数据库打交道,其中最常见的数据库也就是MySQL数据库,因为是免费,而且几乎支持所有的开发语言(好用)。在Java操作数据库时,并且一次操作多条sql语句时,这个时候事务的优点体现出来了,事务可以让任何有出错的数据回到操作之前。举个例子,若果需要在数据库中添加两条数据,如果两条数据都添加成功这是我们最想要的结果。但是 程序在执行时如果第一条成功添加到了数据库,到了第二条突然服务器崩溃出错了,没能把第二条数据添加成功,这个时候就会影响客户的使用。一旦这个程序是用在银行系统上该怎么办?这个时候事务的使用会把操作回滚到添加之前的状态,就是说两条数据都没有添加成功,然后给客户一个信息,添加失败。有了事务只要其中多条sql语句有任何一条出错,那么所有的数据都不会被执行。这样就更加的保证数据库的准确。

Web前端:

在之前web前端的开发的技术是指HTML、CSS和JavaScript。随着RIA的流行和普及,Flash/Flex、Silverlight、XML和服务器端语言也是前端开发工程师应该掌握的,随着时代的发展,前端开发技术也演变成为现今的:html5,css3,jquery。在这里我就简单地说一下最常用的HTML、CSS、JavaScript和jQuery。

学习java之后再学前端的开发会变得很容易,因为在写html标签和布局时是基本不涉及到复杂的逻辑,只要细心、耐心是可以学好的。其实对HTML标签的调试可以用浏览器上的检开发员工具,来调试一些div或其他元素的位置和大小,等调试好之后再把这些标签写入代码中,这样可以减少多次修改。在这里主要说一下HTML5的新属性。在H5中添加很多标签的新属性,可用于判断用户输入的判断,比如H5中对form表单的改良,可以把文本框的type属性设置成number,time,还有email等,这些可以对用户输入的值自动判断number就是只能输入数字,可以设置数字的范围。time就是可以直接选择一个日历上的时间,email是可以对输入的是否是邮箱地址进行判断,等等,H5增加了好多属性之前标签的属性,又增加了几个行的标签,如<aricle></ariticle>、<aside></aside>、<canvas></canvas>等等。现在HTML5的新标签和新属性越来越火了,建议大家把HTML5的标签学会,尽量多的使用。

JavaScript,也是结合前端的一种语言,主要用于获取前端页面的东西,和控制一些动画效果等,其实有些简单的动画效果用CSS3是完全可以实现的。JavaScript是一种动态类型、弱类型、基于原型的语言。它是以java开头的命名,所以它的语言看起来也有点像java,就像php的框架一样,JavaScript在实现某种效果时,因为写得代码太多,不便与开发,所以jQuery的出现,让js的语法变得很简单,jQuery中把JavaScript的方法优化成了很简单的语法形式,方便使用。jQuery是js的一个库,它把js实现的一些动画效果封装成了一个简简单单的方法,只需要引入jQuery的插件,就可以方便使用了。jQuery也把Ajax的技术用于对数据的异步提交封装成了一个方法,提高了开发人员的实用性。

PHP:

一个网站只有前端的静态页面是不够的,就像一个死的东西,有了php才能让用户用浏览器通过服务器来读取数据库中的东西进行一些操作,比如在网站上看一个人的CSDN博客,自己发表一篇文章啊,之类的。php就是用来操作数据库和服务器的,这些东西HTML标签是无法做到的。

其实,现在对网站的开发,那些程序员都不是用最原始的php来编写的,目前php有很多框架,如常见的sysmfony、cakephp、fleaphp、zend、kohana、CodeIgniter、thinkPHP、Yii、qeephp,laravel等;用了这些框架对开发来说大大提高了效率,并且是结构变得如此清晰。如:拿thinkphp来说,thinkphp使用MVC的一种架构思想来写的,踏实把给用户展示的视图层,操作数据库的控制层,还有对数据库自动验证和完成的操作,强制分开,从而使开发人员更加容易的去开发功能。同是,thinkphp还提供了好多封装好的类,如:分页类,验证码类,上传文件类等。不用让开发人员再用php去写那些类,是开发的效率更高。在这里我提一点,对于一些表单的提交,一定要在php中做判断,例如输入的名字或者数字不符合要求之类的,所言HTML5对表单做的自动验证,不让用户输入不符合要求的格式。但是,那是在前台,人们都可以自己修改前台的代码,php的代码在浏览器中是无法看到的,所以再php中判断就显得很重要了。所以建议大家,在开发后端php是最重要的一点就是 “严谨”,要注意细节,不能出现漏洞,该有的判断一定要有,不要偷懒,否则就会出现不必要的后果,有句话说的好叫:小心得天下,大意失荆州!

ps:本文为个人见解,有不对之处,望斧正

原文转自:https://blog.csdn.net/Iloveyougirls/article/details/52289045

从java到web前端再到php,一路走来的小总结的更多相关文章

  1. 如何自学编程,零基础适合学习Java或者Web前端吗,非科班的能学java吗?

    很多人都会选择自学Java或者前端,相信有在校的大学生,有正在上班想转行的,也有已经在自学的.下面通过几个问题我来给大家分析学习编程的难易程度. 编程是什么? 通俗的理解,编程就是编写程序,哪什么是程 ...

  2. Java与Web前端发展前景及薪资对比

    Web前端和Java谁的薪资待遇高?关于这个问题,是很多网友都感兴趣的,在各大论坛贴吧上也看到了不少类似的问题. 现在的互联网行业飞速发展,因此有很多小伙伴想要进入IT行业分一杯羹,但是关于学习什么技 ...

  3. Web前端的路该怎么走?很迷茫

    “路漫漫其修远兮,吾将上下而求索”,这句出自<离骚>. 虽然端午已过,但是还是不影响一个程序员想表(zhuang)达(boy)自己此刻心情的冲动. 偶然路过同事旁边,不(tou)小(kan ...

  4. Java 之 Web前端(一)

    1.http a.定义:超文本传输协议 b.作用:web服务器与web浏览器之间通信 c.步骤: ①客户端与web服务器建立连接(IP地址与端口号) ②客户端发送http请求(请求资源路径) ③服务器 ...

  5. Java 之 Web前端(三)

    1.JSP a.全称:Java Server Page b.运行:翻译.编译.类装载.类实例化.(初始化.服务.销毁 (这三点为Servlet的生命周期)) 2.JSP的基本组成 a.HTML模板 注 ...

  6. Java 之 Web前端(四)

    1.EL表达式 a.语法: <%pageContext.setAttribute("page","page") %> ${page} b.适用:pa ...

  7. Java 之 Web前端(二)

    1.Cookie (客户端所拥有) a.含义:服务器给浏览器的甜点 b.语法: //创建Cookie Cookie cookie = new Cookie("name", &quo ...

  8. 零基础如何学习Java和web前端

    今天说一下零基础到底能不能学习Java,为什么有的人说学不了呢,那么接下来我为大家揭晓,零基础到底适合不适合学习Java. 零基础学习Java的途径第一个就是看视频,然后就是看书,或者在线下报个培训班 ...

  9. Java 之 Web前端(六)

    1.AJAX a.定义:异步的 JS 和 XML b.作用:不重新加载页面的情况下,与服务器的数据进行交互,改变网页的部分内容 c.语法: <html> <head> < ...

随机推荐

  1. 知物由学 | AI网络安全实战:生成对抗网络

    本文由  网易云发布. “知物由学”是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不会知道.“知物由学” ...

  2. 【OCP新题库】052最新题库解析-第5题

    5.Which two affect the time taken for instance recovery? A) size of redo logs B) size of UNDO tables ...

  3. linux查看python安装位置

    1, import sys print sys.path 即可打印所有python路径.   2, 执行命令whereis python即可显示出python相关的所有的路径,包括可执行文件路径,安装 ...

  4. MySql环境变量配置

    配置环境变量 前面步骤完成后安装好MySQL,为MySQL配置环境变量.MySQL默认安装在C:\Program Files下. 1)新建MYSQL_HOME变量,并配置:C:\Program Fil ...

  5. Mac中搭建 iOS 的 React Native 环境

    手把手教你在Mac中搭建iOS的 React Native环境 http://www.cnblogs.com/damnbird/p/6074607.html 准备工作 1.你需要一台Mac电脑..(这 ...

  6. ubuntu apt update时W: GPG error http://ppa.launchpad.net lucid Release没有公钥无法验证NO_PUBKEY签名问题解决

    在安装更新时,即在运行命令行sudo apt-get update 或者运行更新管理器的时候,出现W: GPG 错误: W: GPG error: http://ppa.launchpad.net/o ...

  7. 2016级算法期末上机-F.中等·AlvinZH's Fight with DDLs II

    1118 AlvinZH's Fight with DDLs II 思路 中等题,贪心. 理解题意,每次攻击中,可以使某个敌人生命值-1,自己生命值减去∑存活敌人总攻击力. 贪心思想,血量少攻击高的要 ...

  8. whdxlib

    1 数据库系统实现 实 验 指 导 书 齐心 彭彬 计算机工程与软件实验中心 2016 年 3 月2目 录实验一.JDBC 应用程序设计(2 学时) ......................... ...

  9. springcloud(五)-Ribbon

    前言 先发句牢骚,最近太TM忙了,一直没时间静下心来继续写微服务架构!EMMMMMM..... 经过前文的讲解,我们已经实现了微服务的注册与发现.启动各个微服务时,Eureka Client会把自己的 ...

  10. [Xarmrin.IOS]使用Build Host 在Windows上建置IOS程式及DeBug (转帖)

    使用Xamarin開發IOS程式時, 必須要在Mac上才可以編譯程式,若想在windows系統上編譯,則可透過Build host的方式, 但還是要有一台Mac的電腦就是了XD 首先你的Mac必須要已 ...