从java到web前端再到php,一路走来的小总结

时间:2022-10-27 14:12:15

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. python学习 函数

    # -*- config=utf-8 -*- #################################### 函数 ################################## de ...

  2. jQuery获取Ajax函数的返回值

    参考自: http://blog.csdn.net/crx05/article/details/7362252 function test() { var myText = ""; ...

  3. Unicode编码(转)

    随着计算机的发展.普及,世界各国为了适应本国的语言和字符都会自己设计一套自己的编码风格,正是由于这种乱,导致存在很多种编码方式,以至于同一个二进制数字可能会被解释成不同的符号.为了解决这种不兼容的问题 ...

  4. Vue技术内幕 出去看看吧 实例化&plus;挂载

    实例化时挂载DOM 从 Vue.prototype.$mount 挂载函数开始 有 template配置项时生成 render函数

  5. 2017UGUI之slider

    不让鼠标控制slider的滑动: 鼠标之所以可以控制滑动是因为slider具有interactable这个属性(下图红色的箭头的地方):如果取消了这个属性的运行的时候就不能滑动了.如果要代码去控制这个 ...

  6. Windows10 Build 18298 桌面显示计算机(此电脑)

  7. 走进JDK&lpar;七&rpar;------LinkedList

    要学习LinkedList,首先得了解链表结构.上篇介绍ArrayList的文章中介绍了底层是数组结构,查询快的问题,但是删除时,需要将删除位置后面的元素全部左移,因此效率比较低. 链表则是这种机制: ...

  8. Python3基础系列-基本入门语法

    本文简单地介绍了python的一些基本入门知识,通过对这些知识的了解,大家可以写一些简单的代码,同时也为后面深入理解打下基础.本文的主要内容如下: 值和类型 值,即value,通常有:1,2,3.14 ...

  9. nodejs异步读数据库

    以下代码不完美,但讲明了使用方法. 回调: function selectUser(callback) { var sql = "SELECT * FROM user"; conn ...

  10. 配置HugePage

    翻译自https://www.thegeekdiary.com/centos-rhel-67-how-to-configure-hugepages/ 什么是HugePage HugePages是Lin ...