初学者必看Java的常用开发工具

传智播客博学谷

-

get最新最全的IT技能

免费领取各种视频资料

java常用的开发工具。都说工欲善其事必先利其器,要想学好java这门语言,选择一款好用顺手的开发工具是必不可少的。另外面试java工作时开发工具的使用也是一个重要的考核点。

要想全面了解java开发工具,我们首先需要先了解一下java程序的开发过程,通过这个过程我们能够了解到java开发都需要用到那些工具。

首先我们先了解完整项目开发过程,如图所示:

从上图中我们能看到一个完整的java项目的开发包括很多的环节,每个环节都需要用到不同的开发工具。在实际java项目开发中,一般每个环节都有专门的人负责。比如:原型的设计有产品经理负责。界面的美化有专门的美工负责。前端有专门的前端开发人员负责。我们的课程中主要涉及的是研发这个环节。而研发主要工作就是根据项目的需求文档设计系统架构、设计数据库、编写调试程序代码。对于普通的码农来说,主要的就是编写和调试程序。

从上图中我们可以看到:

1、要想编写程序,需要一个能编写源代码的编辑工具。例如:Notepad++;2、要想测试程序,需要一个编译、执行工具。例如:JDK;3、要想单独测试一个单元,需要一个单元测试工具。例如:JUnit、TestNG;4、要想编写开发文档,需要开发文档编辑工具。例如:word、Excel、PPT;5、要想分析设计程序,需要程序的分析设计工具。例如:StarUML;6、要想方便管理源码和版本升级,需要源码管理和版本维护工具。例如:SVN,Git;7、要想多个团队协作开发或者项目用到很多的第三方类库和Jar包。需要自动化构建工具。例如:Maven、gradle;8、要想在一个工具中使用以上所有功能,需要用到集成开发工具IDE。例如:Eclipse;

大家看到这么多工具是不是很头疼。哈哈:)所以说java开发入门门槛有点高。没关系。后面的课程我会一个一个逐步给大家详细介绍。下面我们先简单了解一下这些java开发常用工具。

一、java初学者常用源码编辑工具介绍

java源代码本质上其实就是普通的文本文件,所以理论上来说任何可以编辑文本文件的编辑器都可以作为我们的java代码编辑工具。比如:WINDOWS记事本、写字板、word等。但是这些简单工具没有语法的高亮提示、自动完成等功能,这些功能的缺失会大大降低代码的编写效率。所以学习开发时一般我们不会选用这些简单文本编辑工具。我们一般会选用一些功能比较强大的类似记事本的工具,比如:Notepad++、SublimeText、editplus、ultraedit、vim等,具体介绍如下:

Notepad++

Notepad++是Windows操作系统下的一套文本编辑器(软件版权许可证:GPL),有完整的中文化接口及支持多国语言编写的功能(UTF8技术)。Notepad++功能比Windows中的Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。Notepad++不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。Notepad++是免费软件,可以免费使用,自带中文,支持所有主流的计算机程序语言。

editplus

EditPlus是一款由韩国SangilKim(ES-Computing)出品的小巧但是功能强大的可处理文本、HTML和程序语言的Windows编辑器,你甚至可以通过设置用户工具将其作为C,Java,Php等等语言的一个简单的IDE。EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持代码提示功能;配置功能强大,且比较容易,扩展也比较强。

ultraedit

UltraEdit是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII码,完全可以取代记事本,它是一款需要花费49.95美元的共享软件,它提供了友好界面的编程编辑器,支持语法高亮,代码折叠和宏,以及一大堆其他的功能,内置了对于HTML、PHP和JavaScript等语法的支持,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。因为收费它的流行程度不及以上两款软件。但是用它编辑十六进制时非常好用。另外在国内是否收费对我们影响不大:)。

SublimeText

SublimeText是由程序员JonSkinner于年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim。它是一款收费软件,但是可以无限期试用,它是一个跨平台的编辑器,同时支持Windows、Linux、MacOSX等操作系统,SublimeText具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。SublimeText的主要功能包括:拼写检查,书签,完整的PythonAPI,Goto功能,即时项目切换,多选择,多窗口等等。它目前非常流行的一款编辑器,特别是前端开发,基本成了标配。

vim

im是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。目前Vim已经有各主流系统的版本,但因为学习入门难度比较大,因此在windows平台一直没有流行起来。但是在类Unix系统非常流行。尽管vim较vi已经改良了不少,但是初次使用还是会一头雾水,不知如何操作,所以学习vim要首先过2关。第一关是理解vim的设计思路,vim设计之初就是整个文本编辑都用键盘而非鼠标来完成,键盘上几乎每个键都有固定的用法。第二关是命令关,vim有过百条命令对应编辑的需要,如果能熟练使用vim这些命令,编辑速度会比鼠标要快很多。

二、java编译执行工具介绍

以上工具的主要功能是编写java源代码,要想编译、执行编写的java代码,我们还需要一个编译和执行的工具。也就是java官方提供的JDK(JavaDevelopmentKit),也叫java开发工具包。关于JDK的安装与配置。我们下一节专门讲解。在这我们简单了解一下就行了。

JDK

JDK是Java语言的软件开发工具包,JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库等。当我们编写好java源码后,使用JDK提供的java工具来编译、执行java程序。所以要做java开发,首先就是要在开发电脑上安装JDK。下节课我们专门介绍JDK的安装与配置。

三、java单元测试工具介绍

单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为是否合理正确。例如:是在现实世界中,某公司为神州十一号生产了一个零件,必须要单独测试这个零件是否有问题。如果单个零件都不测试。等到都集成到产品中以后再测试。遇到问题往往会找不到原因出在那里,会造成非常大的损失。所以要把所有问题在零件集成到产品以前就解决。这就是单元测试。

JUnit

JUnit是一个Java语言的单元测试框架。它由KentBeck和ErichGamma建立,逐渐成为源于KentBeck的sUnit的xUnit家族中最为成功的一个。JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。JUnit是由ErichGamma和KentBeck编写的一个回归测试框架(regressiontestingframework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

TestNG

TestNG即Testing,NextGeneration,下一代测试技术,它是一个测试Java应用程序的新框架。是一套根据JUnit和NUnit思想而构建的利用注解来强化测试功能的一个测试框架,即可以用来做单元测试,也可以用来做集成测试。TestNG不仅确实强大、创新、可扩展、灵活。TestNG是一个设计用来简化广泛的测试需求的测试框架。由于设计目标的不同,对比junit的只适合用于单元测试,TestNG无疑走的更远。

四、java源码管理与版本控制工具

java项目一般都是团队开发,当多人共同编写一个项目的时候。代码的整合就需要用到专门的源码管理工具了。另外java项目版本的不断更新,也需要版本的管理。所以源码管理与版本控制工具也是每个java程序员必须要熟练掌握的。目前比较流行的java版本控制工具主要有svn、git这两款软件。这两种工具也是每个java程序员必须要熟练掌握的。本节我们只是简单介绍一下,后面的课程我们会拿出专门的一节来讲解这些工具的具体使用。

SVN

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。SVN的缺陷是过分依赖网络,不适合分布式开发。使用svn的工作流程如下:1、早上从从服务器下载项目组最新代码。2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。

Git

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。与常用的版本控制工具CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持(ps:这得分是用什么样的服务端,使用







































北京治疗白癜风比较好医院
中药清热解毒治白癜风



转载请注明:http://www.nylrzx365.com/jbjj/9810.html