在技术方面无论我们怎么学习,总感觉需要提升自已,却又不知道从哪里着手,同时也不知道自己处于哪个水平。这时候就需要有清晰的指示图来指引我们,这样我们能清楚的知道我们在哪方面不足,以及自己大概处于哪个阶段和水平。
图1:java技术路线图
(一)java程序员
1. 高级特性
反射、泛型、注释符、自动装箱和拆箱、枚举类、可变
参数、可变返回类型、增强循环、静态导入
2. 核心编程
IO、多线程、实体类、
集合类、正则表达式、
XML和属性文件
3. 网络编程
Socket/TCP/UDP、NIO、RMI、CORBA
4. Java语法基础
类、抽象类、接口、最终类、静态类、匿名类、内部类、异常类、编码规范
5. Java开发环境
JDK、JVM、Eclipse、Linux
6. Java核心编程技术
Java,设计而又非常精巧的语言。学习Java,须从Java开发环境开始,到Java语法,再到Java的核心API。
(1)Java开发入门:Java开发环境的安装与使用,包括JDK命令、EclipseIDE、Linux下Java程序的开发和部署等。
(2)Java语法基础:基于JDK和Eclipse环境,进行Java核心功能开发,掌握Java面向对象的语法构成,包括类、抽象类、接口、最终类、静态类、匿名类、内部类、异常的编写。
(3)Java核心API:基于JDK提供的类库,掌握三大核心功能:
A. Java核心编程:包括Java编程的两大核心功能——Java输入/输出流和多线程,以及常用的辅助类库——实体类、集合类、正则表达式、XML和属性文件。
B. Java网路编程:Applet组件编程,Socket编程,NIO非阻塞Socket编程、RMI和CORBA分布式开发。
(4)Java高级特性:掌握JDK1.4、JDK5.0、JDK6.0中的Java高级特性,包括反射、泛型、注释,以及java高级特性——自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入等。
(二)JavaEE初级软件工程师
1. JSF框架开发技术
配置文件(页面导航、后台Bean)、JSF组件库(JSF EL语言、HTML标签、事件处理、)、JSF核心库(格式转换、输入验证、国际化)
2. Javaweb核心开发技术
开发环境(Eclipse、Linux)
三大组件(JSP、JavaBean、Servlet)
扩展技术(EL、JSTL、Taglib)
3. 网页开发技术
HTML、XML、CSS、JavaScript、AJAX、JSON
4. 数据库设计技术
SQL、MySql、Oracle、SQLServer、JDBC
5. Web服务器(Tomcat/Jetty/Resin/JBossWeb)
6. JavaWeb核心技术:
网页开发+数据库设计——>JavaWeb项目开发,其中,javaWeb由6项基本技术组成:JSP+JavaBean+Servlet+EL+JSTL+Taglib,而JSF正是将这6种技术进行有机结合的技术框架:
(三)JavaEE中级软件工程师
四种经典架构SSH1、SSI1、SSH2、SSI2,如下:
Struts1表现层框架:入门配置、核心组件、标签库、国际化、数据检验、数据库开发、Sitemesh集成、集成Hibernate/iBATIS
Struts2表现层框架:入门配置、核心组件、标签库、国际化、数据校验、Sitemesh集成转换器、拦截器、集成Hibernate/iBATIS
Spring业务层框架:入门配置、IoC容器、MVC、标签库、国际化、数据校验、数据库开发
Hibernate持久层框架:MySQL、Oracle、SQLServer
iBATIS持久层框架:MySQL、Oracle、SQLServer
(四)JavaEE高级软件工程师
1. javaWeb开源技术与框架:工作流、规则引擎、搜索引擎、缓存引擎 、任务调度、身份认证、报表服务、系统测试、集群、负载平衡、故障转移
2. JavaWeb分布式开发技术:JTA(Java事物管理)、JAAS(Java验证和授权服务)、JNDI(Java命名和目录服务)、JavaMail(Java邮件服务)、JMS(java信息服务)、WebService(web服务)、JCA(java连接体系)、JMS(java管理体系)、应用服务器(JBossAS/WebLogic/WebSphere)
(五)JavaEE系统架构师
1. 面向云架构(COA):COA、SaaS、网格计算、集群计算、分布式计算、云计算
2. 面向资源架构(ROA):ROA、RESI
3. 面向web服务架构(SOA):WebService、SOA、SCA、ESB、OSGI、EAI
4. Java设计模式
创建式模式:抽象工厂/建造者/工厂方法/原型/单例
构造型模式:适配器/桥接/组合/装饰/外观/享元/代理
行为型模式:责任链/命令/解释器/迭代子/中介者/备忘录/观察者/状态/策略/模板方法/访问者
5. Java与UML建模:对象图、用例图、组件图、部署图、序列图、交互图、活动图、正向工程与逆向工程
参考资料:
1. 从程序员到CTO的Java技术路线图