您的位置:首页 > 编程语言 > Java开发

企业级Java开发学习路线(草稿)

2014-05-18 22:23 281 查看
最近的一个项目,有些非Java平台的开发同事要参与到基于Java的分布式系统建设,因此整理了一下Java的主要学习路线。因此本文面向有一定其他开语言/平台开发经验,转向Java的开发人员。

路线概述

Java体系的三个方面:J2SE,J2EE,J2ME。

J2SE,Java 2 Platform Standard Edition,我们经常说到的JDK,就主要指的这个,它是三者的基础,属于桌面级应用开发,这部分如果学得好很容易拓展J2EE和J2ME。

J2ME,The Micro Edition of the Java 2 Platform。主要用于嵌入式Java,如手机,PDA等等,目前被Android严重压制。

J2EE,Java 2 Platform,Enterprise Edition,企业级Java,适合企业的大型应用开发。

J2SE

新手最初学习的时候先要从J2SE开始学起,所包含的内容主要分为:Java基本语法的学习,掌握常用的Java API等(关键是要学会怎样查阅),面向对象概念的理解、Java桌面图形界面应用程序的开发。

重点:Java基本语法(循环结构,数据类型,数组,运算符等)、Swing/GWT,事件机制、文件输入输出流处理等

难点:面向对象思想的理解(接口、类等)、线程、socket网络编程等

视频教程推荐:孙鑫的Java基础视频教程、张孝祥的Java基础视频教程,讲的都很细,而且这两位老师在教学方面都有很好的经验。

J2EE

在学习了J2SE之后,你可以尝试着慢慢过渡到J2EE。J2EE有三个必学的框架,如果你说你学了J2EE,但又不会这三个框架的话,那会让人笑掉大牙,这三个框架分别是Struts、Spring和Hibernate,虽然这三个框架应用很广,但不代表这三个框架就代表了J2EE,J2EE还有很多其他的东西,比如EJB,作为一款重量级(此重量级不是指重量级选手那个意思,此重量级非彼重量级)框架,虽然这个应用慢慢的再被其他框架所取代,但EJB3.0的出现也给它带回一些生机,作为一个分布式应用的框架,也是大家要去学习和了解的知识。

当然,刚才说到J2EE包含的范围很广,即使我把我所了解的所有技术说出来,也并不能代表J2EE,这是一个很深很广的学问,需要大家以后再工作的时候慢慢去发现了。我所了解的还包括:

JDBC:Java数据库连接对象,基础中的基础,Hibernate也只是对它的封装而已

JNDI: Java 命名与目录接口,J2EE重要规范之一

EJBS: 上面已经提到过了

RMI: 提供远程调用方法的支持,主要用于程序分布式开发

JMS: Java消息服务,中间件技术

JAVA IDL: 提供J2EE平台与CORBA交互能力和互联能力的技术

JTS: 组件事务监视器

JTA: 事务划分的一个技术

JAVAMAIL: Java中的邮件技术

JAF: Java启动框架,没研究过

Log4j,一款日志处理的框架应用

Junit:单元测试的好帮手

freemarker、velocity:两款不错的模板引擎

与Flash的交互Flex:目前很多的SNS应用就是使用到了这个技术

Web services:想知道我们论坛天气预报的效果是怎么做的吗?请关注这个技术

SOA:面向服务架构,未来技术发展的趋势之一

……

不过前面介绍到得这些都不是J2EE的基础,是属于框架应用级别的.要真正把上面说到的知识掌握好,还是的学习J2EE最核心的东西:JDBC、JSP、servlet和JavaBean,后面三个也是学习SSH的基础(Struts/Spring/Hibernate的简称).鉴于J2EE的内容太过复杂,建议大家最初只学习: JSP, servlet和JavaBean,等这个基础掌握好再把SSH学习了,再对其他J2EE技术有个大致的了解就可以出去找工作了。当然,找工作的前提除了把Java学习好,还会有一些其他的技术也是必须要掌握的。

在这阶段,大家更多的是会接触到比如设计模式的东西,比如工厂模式、桥梁模式、单例模式等等,还要学习建模思想(比如UML建模等等)和软件生命周期等等。这些是升华大家编程思想的手段和途径。

数据库技术:

数据库几乎是程序中不可或缺的一部分,在整个软件开发中更是占据了重要作用.数据库在整个软件中扮演的是地基的角色,你要修房子,就要先打好地基,你要做软件,就要先设计好的数据库.目前数据库几乎都是关系型数据库,代表的有:

SQL Server,目前最新的好像是2008,我不是很喜欢追赶时髦,用的还是2005,不过也很不错了,在此之前还有2000.

MySQL,最知名的开源数据库之一,我很喜欢它的小巧耐用,学过SQL SERVER数据库再学它,无师自通,易如反掌.

ORACLE.甲骨文公司的产品,大型数据库,正版的一般公司买不起.只有看看了,不过现在Java开发60%都是会使用到这个数据库,再加上现在甲骨文已经把sun公司收购了,JAVA和ORACLE得关系更加暧昧,各位得多花些时间在这上面了.

除了这些,你还应该了解一些桌面应用软件开发用到的数据库,比如说sqlite。你在制作安装程序的时候可以把这个数据库打包进你的安装程序。

网页编程基础:

网页编程基础要学的内容也比较多,但主要集中在以下这三个技术之上,大家每天看的各种样式的网页都是它们呈现的:

HTML:超文本标记语言

CSS:层叠样式表

Javascript:浏览器客户端脚本语言

现在更是流行各种JavaScript库,比如:Jquery、ExtJs等,你要是会其中的某一个库的使用,找工作so easy。

开发工具

开发工具的选择主要还是看大家的习惯,我个人比较喜欢使用eclispe,功能很强大,也很好拓展其他的功能。当让初学你也可以选择JCreator,或者最好就直接用记事本。等你熟悉了Java代码之后,就可以使用JBuilder、eclispe或者netbeans这一类的工具了。

先说到这里先,以后大家一起完善这个帖子。尽量再给大家整理一些学习的资源在这里。也欢迎大家一起整理我文章中提到的一些技术资源和开发工具。最后,再和大家分享一句话:生命欣欣向荣,唯奋斗不息。

Java学习路线图



Java学习路线二

java分成J2ME(移动应用开发),J2SE(桌面应用开发),J2EE(Web企业级应用),所以java并不是单机版的,只是面向对象语言。

建议如果学习java体系的话可以这样去学习:

*第一阶段:Java基础,包括java语法,面向对象特征,常见API,集合框架;

*第二阶段:java界面编程,包括AWT,事件机制,SWING,这个部分也可以跳过,用的时候再看都能来及;

*第三阶段:java API:输入输出,多线程,网络编程,反射注解等,java的精华部分;

*第四阶段:数据库SQL基础,包括增删改查操作以及多表查询;

*第五阶段:JDBC编程:包括JDBC原理,JDBC连接库,JDBC API,虽然现在Hibernate比JDBC要方便许多,但是JDBC技术仍然在使用,JDBC思想尤为重要;

*第六阶段:JDBC深入理解高级特性:包括数据库连接池,存储过程,触发器,CRM思想;

*第七阶段:HTML语言学习,包括HTML标签,表单标签以及CSS,这是Web应用开发的基础;

*第八阶段:JavaScript脚本语言,包括javaScript语法和对象,就这两个方面的内容;

*第九阶段:DOM编程,包括DOM原理,常用的DOM元素以及比较重要的DOM编程思想;

*第十阶段:Servlet开发,从此开始踏入java开发的重要一步,包括XML,Tomcat服务器的安装使用操作,HTTP协议简单理解,Servlet API等,这个是java web开发的基础。

*第十一阶段:JSP开发:JSP语法和标签,自定义标签,EL,JSTL库了解以及MVC三层架构的设计模式理念;

*第十二阶段:AJAX 开发:AJAX 原理,请求响应处理,AJAX 开发库;

*第十三阶段:轻量级框架,三大框架之一Struts 框架的学习,自此踏入java web 开发的精华部分,

包括Struts 体系架构,各种组件,标签库和扩展性的学习;

*第十四阶段:Hibernate 框架学习,三大框架之一,包括检索映射技术,多表查询技术,缓存技术以

及性能方面的优化;

*第十五阶段:Spring 框架的学习,三大框架之一,包括了IOC,AOP,DataSource,事务,SSH 集成以

及JPA 集成;

*最后呢,还有些java 的技术,包括EJB3.0 等,可以选择学习,与三大轻量级框架相比,EJB 就是

当之无愧的重量级了(不过EJB3.0 减肥许多了较EJB2.X 来说)。

补充:JSP 部分主要包括了:

1、JSP 指令和动作指令;

2、JSP 内置对象(request,response,session,out,application 等);

3、JSTL(JSP 标准标签库);

4、JSP 数据库操作(jdbc);

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: