java入门

来源:互联网 发布:半个美国网络瘫痪 编辑:程序博客网 时间:2024/05/17 20:52



  对于一个完全零基础的外行人来说,学习java所遇到的第一个难关就是接受java。在没有学习之前,一直以为计算机语言是个很神奇的东西,有很强烈的陌生感和距离感。在开始学习的时候会有些摸不着头脑,是非常正常的事情了,所以我在认识java并入门的时候用了相对比较长的时间,希望可以把java内化成自己的思维里面去,这样后期学习起来就会变得非常的容易,接受起来也会非常轻松(我学习的资料并不局限于java自学视频)。
  好在作为有一定阅历的学习者,虽然没有任何具体的软件开发知识,但是从这些知识中所抽象出来的学习方法学习思路基本和别的是大同小异的,有了这种认识,java的知识结构就比较容易内化成自己的知识体系了,进而在后面的学习理解上就变得容易多了。
  以前对编程,对软件开发等的理解是用专门的软件工具写写代码,程序软件就出来了,但是具体是怎么出来的,代码都有什么区分,为什么又有各种编程语言以及软件开发的本质是干嘛的等等基本没有多大的概念。开始学习后,对编程以及软件开发开始有了正确的框架,并且那种痴迷也变得越来越浓厚了。
  我们要做软件开发,首先要明确一点就是,软件开发的意义--解决需求。这才是学习各种语言或者编程的最关键的东西,也就是我们常说的编程的思想,也是我们在开发代码时第一位要写的注释。这是我们在编程过程中一直要贯穿的一根主线索。其次就应该程序员是如何来解决需求的,这个过程就叫做编程,或者软件开发。对任何一种语言,其具体的过程都应该是这样的:1、用特定的语言的规则开发出表示一定含义的程序代码;2、将所开发出的代码用对应的语言编译器编译成对应的可执行文件;3、在对应的运行环境中来运行该可执行文件。通过这三个步骤也就完成了一个编程的过程并同时解决了相应的需求。
  进一步来类比分析,就会有一种非常熟悉的感觉,计算机的世界我们不懂,但是计算机的世界有很多很强大的功能,我们可借以为我们所用,从而将这个过程命名为软件开发。而让计算机世界里的功能能为我们所用,首先要能够和计算机进行互动,也就是与计算机进行交流,得明白他是什么意思,同时让他来明白我们的意思,于是这时候就需要我们来理解计算机的表达以及表达内容。这时候我们就要认识计算机表达的方式--计算机语言,只有把我们的思想用它们的语言去表达,用它们的思维方式去表达,那么它们就能理解并接收我们的意思,并且去执行它,我们通过一定的方法或者途径进入到计算机世界里面来做我们需要做的事件的过程就叫做软件开发,也是在电影【黑客帝国】里所发生的故事。这与学习各种外语就是同一种思路,只不过不同的计算机语言代表着虚拟世界里不同的国度,这样来理解,所谓的软件开发也就更加容易接受并内化了。并且学习计算机语言比学习外国语言更有用,因为掌握了计算机语言就可以直接植入我们的思想和需求,不会有任何的抵触和排斥。
  不同的运行环境或平台就决定了不同的语言使用,这就是计算机语言有多种的决定性的原因。一种软件开发的方法,不仅仅只有语言的表达--思想和需求,还要有运行环境的启动--思想的执行,当然关键点是把我们的思想通过计算机语言表达出来,这样才会被理解并执行。单纯的语言的表达是没有任何的意义和价值的,只有被执行出来了,才是我们所需要的思想。因此java他不仅仅只是一种语言,也是一种软件开发和执行的平台,java应是他们三者的统称,即一种软件开发的方法,语言只是狭义的定义。其他的语言也应该是这样。
  那java是什么?java首先肯定是一种计算机编程语言的名称,其次,java还是一种开发的平台,一种运行平台,一种部署环境。根据java的用途,java主要有三种版本,jse(java standard edition)标准版本,jme(java micro edition)微缩版本,jee(java enterprise edition)企业版本。jse主要用来开发桌面级应用,即单机应用;jme主要用来开发手持设备、智能卡、家电终端等领域;jee主要就是企业级的应用了,如oa,soa、crm等。
  java首先是一种语言,所以必须要有他相应的语法使用规则,这点一定是后期课程里很大的一个部分;java其次是一种开发平台,在java安装包中,所对应的工具包就是JDK;java也是一种运行平台,那所对应的工具包就是JRE工具包;当然在JDK中,也包含有jre这个运行工具包,因为开发是一整个过程,最终肯定也是需要表达出来的;JDK主要是针对于开发者的工具包,JRE主要是针对软件使用者的工具包。关于java的开发工具和运行工具的环境构建以及使用技巧也肯定是后期课程的另一个大的部分。
  java有一个很独特的特点就是跨平台性,这是其他开发方法不能具有的,跨平台性的根本就是因为java所开发的软件都是面对虚拟机jvm(java virtual machine)的,不是直接面向操作系统的,而java能在不同软硬件结构的终端上执行是因为jvm他自己又进行了一次面向平台的即时编译JIT(just in time),这个是不需要开发者需要做的事情,是jvm自动处理的。这个jvm就相当于运行环境jre。这也是java比用其他语言开发的程序会慢些的根本原因,当然随着现在的jit技术越来越成熟,java编写的程序和别的语言编写的程序速度也都差不多了。这也是为什么java相对其他语言会相对好学一些的根本原因。jvm基本上解决了所有运行环境的问题,包括垃圾回收,安全性等等,所以学习java编程重点是针对于jvm编写代码的规则弄明白了,就基本学会了,因为后面的运行部分基本都交给jvm来处理了,只要jvm能识别我们的代码表达的意思,基本就完成了。
  作为一个程序开发者,不论是使用哪一种语言,首先第一步就要调试开发工具使用环境,使环境更适合行业使用规范和更方便快捷的使用,这里就需要进行环境变量的配置。环境变量的配置有两种方法,一种是永久性配置,一种是在dos命令里面临时配置。主要配置的变量有path,classpath,JAVA_HOME这三个变量,其含义是主路径,类路径,以及寻找java执行文件的路径,其中有一个小技巧就是用符合%%来进行动态配置地址的设置。
  调试和构建好开发工具使用环境后,我们程序员就可以自由的在我们代码的海洋里翱翔了。
  运用java进行软件开发的一整套流程如下:
  编写代码(java格式)--编译类文件(.class字节码文件)--类装载classloader--字节码byte-code检验--解释执行interpreter或即时编译JIT(just in time)--运行。
  后面的课程内容应该将会是如何在代码的海洋里去正确规范的表达我们的思想以及如何把思想的表达式正常的执行出来。


  

0 0
原创粉丝点击