本文将告诉你学习Java需要达到的25个目标,希望能够对你的学习及找工作有所帮助。对比一下自己,你已经掌握了这25条中的多少 条了呢?
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是 class,object,interaction以及statediagrams。
2.你需要学习Java语言的基础知识以及它的核心类 库 (collections,serialization,streams,networking,?multithreading,reflection,event,handling,NIO,localization, 以 及其他)。
3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。
4.如果你将要写客户端程序,你需要学习Web的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序 的 SWING,AWT,?SWT。你还应该对UI部件的JavaBEAN组件模式有所了解。JavaBEANS也被应用在JSP中以把业务逻辑从表现层 中分 离出来。
5.你需要学习Java数据库技术,并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO,?CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。
6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如racle,mysql,mssqlserver。
7.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。
8.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。
9.你需要学习如何使用及管理Web服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护Web程序。
10.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。
11.你需要掌握各种流行中间件技术标准和与Java结合实现,比如Tuxedo、CROBA,当然也包括JavaEE本身。
12.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。
13.你应该学习如何利用Java的API和工具来构建WebService。例如 JAX- RPC(JavaAPIforXML/RPC),SAAJ? (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),JAXM(JavaAPIforXMLMessaging),?JAXR(JavaAPIforXMLRegistries), 或 者JWSDP(JavaWebServicesDeveloperPack)。
14.你需要学习一门轻量级应用程序框架,例如Spring,PicoContainer,Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。
15.你需要熟悉不同的J2EE技术,例如 JNDI(JavaNamingandDirectoryInterface),JMS? (JavaMessageService),JTA/JTS(JavaTransactionAPI /JavaTransactionService),JMX? (JavaManagementeXtensions),以及JavaMail。
16.你需要学习企业级JavaBeans(EJB)以及它们的不同组件 模 式:Stateless/StatefulSessionBeans,EntityBeans(包 含 Bean-?ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的 EJB- QL),或者?Message-DrivenBeans(MDB)。
17.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。
18.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流Java规格和执行。例如AspectJ和AspectWerkz。
19.你需要熟悉对不同有用的API和framework等来为你服务。例如 Log4J(logging/tracing),Quartz(scheduling),JGroups(networkgroupcommunication),JCache(distributedcaching),?Lucene(full- textsearch),JakartaCommons 等等。
20.你应该熟练掌握一种JavaIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:)
21.Java(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。
22.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。
23.你需要熟悉一些在Java开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。
24.你还需要紧跟Java发展的步伐,比如现在可以深入的学习Webwork2.0
25.你必需要对实际项目的开发流程有所了解,至少要有两个有实际应用价值的项目,而不是练习项目!因为现在企业看重的是你有没有实际的开发经验,真正开发经验的体现就是你做的项目,也就是有实际应用的项目!
- 浏览: 377034 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
tonyyan:
谢谢分享!
mapreudce 通过读取hbase表删除hbase 数据 -
maicose:
学习了,谢谢
使用spring @Scheduled注解执行定时任务 -
shuaianwen:
若果使用这种注解方式,多个定时任务设置成相同时间貌似不能并行; ...
使用spring @Scheduled注解执行定时任务 -
hanmiao:
故事不错,感觉那小男孩是個营销人才,哈哈...
前期是老板给你发工资,中期是能力给你发工资,后期是品德给你发工资!
发表评论
-
测试工具
2016-02-05 11:08 0<div class="iteye-blog- ... -
Jquery语法
2016-01-28 18:16 01、获取radio 选中自定义属性的值 $('.con ... -
测试12
2016-01-26 18:58 01、数据库的读写分离 ... -
修改java文件时不自动重启tomcat
2015-05-10 14:06 1004修改server.xml文件。 <Context ... -
把jdk打包tomcat中
2015-05-09 17:41 769把jdk打包tomcat中: 1.把jdk1.6.XXX拷 ... -
解压版的Tomcat设为windows服务
2015-05-09 17:40 672一、安装服务在命令行中进入/Tomcat路径/bin/,执行 ... -
WebStorm快捷键收集
2015-05-09 17:31 8231、webstorm快捷键: IntelliJ-Idea ... -
Eclipse中打开文件所在文件夹
2015-05-09 16:40 695eclipse打开当前文件所在文件夹 Run--> ... -
Windows下删除.svn文件夹的最简易方法
2015-03-10 14:54 527删除完成后,为了避免误操作,不小心把正处于版本管理 ... -
Eclipse去掉未使用的引用
2015-03-02 14:18 1754大家在写代码的时候经常会看到如下的情况: 大家都知道这 ... -
Eclipse 代码自动补全功能设置
2014-04-29 17:12 576在做Eclipse项目的时候 ... -
版本管理
2014-03-16 21:40 516总版本号.分支版本号.小版本号-里程碑版本 0.0.1- ... -
自我批评,记录工作错误
2014-02-20 13:39 5012014-02-20 数据移植中各种错误行为思想反省 对于 ... -
前期是老板给你发工资,中期是能力给你发工资,后期是品德给你发工资!
2014-02-08 15:17 1110从前,有一个卖水果的 ... -
windows 下通过端口号查找对应进程ID及其路径
2013-11-01 20:49 1947一、通过端口号找到对应进程 cmd命令行下输入:netst ... -
[Apache] Check the "/xampp/apache/logs/error.log" file
2013-09-05 21:21 2067I check port 80 used by Skype, ... -
sublime text 快捷键
2013-09-05 09:55 789选择类 ctrl+l 选择整行(继续按键则选择下行) c ... -
ZenCoding资料
2013-09-05 09:53 694一款不错的编辑器Sublime Text 插件 zenCo ... -
dos命令
2013-08-14 22:59 796生成多层目录结构 mkdir com\iss\test ... -
Java程序员总结读后感一
2013-08-02 21:43 356来自 http://blog.csdn.net/codea ...
相关推荐
成为Java高手的25个学习目标
要成为Java高手需要注意的25个学习目标
介绍学习java所要掌握的技术点,让想学习java的人知道学习java的目标
一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一个...
一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一个...
带领读者从第一 步做起,来完成一个Java的小程序,通过这个小程序...,读者应该能够达到如下几个目标。 • 熟练掌握如何搭建Java开发环境,包括下载、安装和配置JDK。 • 能够编写和编译Java程序,并能够运行生成文件。
对于一个以前从来没有接触过java的人,java无疑是庞大的,似乎每个领域都可以拓展开来都是一片开阔地,每一个领域要想深入接触到每一个细节所耗费的精力都是巨大的。这个时候大家都胸怀壮志,两眼发光的盯着每一个...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将其置于Java、C和JavaScript之上,真的非常荣幸了 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统管理...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将Python置于Java、C和JavaScript之上,真的非常荣幸了. 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统...
如前所述,我是一个狮子座男人,一度我认为学习Java会使我看起来与众不同,可是几个月以后我放弃了这个选择,我看了论坛里关于这两种语言孰优孰劣的讨论,最终选择了C#,请不要问我为何做出这样的选择,很多人认为...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将其置于Java、C和JavaScript之上,真的非常荣幸了 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统管理...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将其置于Java、C和JavaScript之上,真的非常荣幸了 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统管理...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将Python置于Java、C和JavaScript之上,真的非常荣幸了. 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统...
Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将其置于Java、C和JavaScript之上,真的非常荣幸了 自从20世纪90年代初Python语言诞生至2022年,它已被逐渐广泛应用于系统管理...
课程目标:1、让初学者从小白开始,善于运用知识点,解脱学习的苦恼2、能够学习更多的工作中使用技巧,成为编程高手
课程目标:1、让初学者从小白开始,善于运用知识点,解脱学习的苦恼2、能够学习更多的工作中使用技巧,成为编程高手