1.到网上看看高手对JAVA的一些看法,以及Java的前景。
2.写一个简单的入门例子,比如HelloWorld,可以使用UltraEdit来写,让你对JAVA的编译运行有一个感性的认识。
3.系统地肤浅地了解Java的各个部分,包括语言基础、异常、事件处理、多线程、文件和流、数据库、网络编程等。主要是了解Java解决问题的方面,并熟悉Java与其他编程语言不同的方方面。
4.找一个大一点的稍微全面的例子,仍然使用UltraEdit编写,把它的细节彻底搞明白,不懂的部分去参考相关的细节,这时候写程序还可以参照Sun关于Java的权威教程的解决方案。你可以深入一点地学习一个数据库(Oracle/Sql Server/Mysql)以及XML方面的知识,这些是任何开发中基本都要用到的。如果你准备往J2EE方向发展,可以从web编程着手,Tomcat自带的这些jsp、servlet例子是很好的学习资料。
5.可以开始学着使用Eclipse或者JBuilder等一些高级一点的开发工具来提高效率,找一个真正的项目(不要太大)做做,训练自己,提高自己项目开发的相关意识。
6.积累了一定的经验,你可以读读Effective Java或者Java编程思想,看看专家写的东西跟你平常遇到的解决有什么不同。同时应该在实践中逐步领悟编程理论与编程思想。新技术虽然不断涌现,更新速度令人眼花燎乱雾里看花;但万变不离其宗,编程理论与编程思想的变化却很慢。掌握了编程理论与编程思想你就会有拨云见日之感。面向对象的思想在目前来讲是相当关键的,是强势技术之一,在上面需要多投入时间,给你的回报也会让你惊喜。
7.学一点软件工程、项目管理的知识,提升你的级别,最重要的包括:
UML:项目的业务模型很重要,可以学习像Rose/Viso之类的任何一个工具,他们能让你快速清晰地表达你的想法,是跟客户交流的介质,也是项目成员之间交流思想的介质。
设计模式:可以找些开源的框架,如struts、hibernate来结合学习,看看他们到底用了那些设计模式。
版本控制与代码的管理,最常用的还是CVS和VSS,了解一下版本控制与代码管理,对整个项目的开发管理大有益处。
项目管理的其他:像需求管理、任务管理、风险管理、Bug缺陷报告等等。cvstrac可以简单地解决这些问题。
项目开发的过程:像RUP/XP等,这些过程让你更专业化而不意气用事,也让你学会自己制订计划、安排任务,象极限编程、测试驱动开发、敏捷软件开发:原则、模式与实践是介绍这些的好书。
项目测试:包括单元测试(Junit)、web的集成测试(HttpUnit、Catus,可以测试Jsp,Servlet)、压力测试(Jmeter).内存性能分析(JProbe可以帮你解决内存泄漏问题)。
项目的自动构建:磨刀不误砍柴功,自动构建脚本可以助你一臂之力,可以让你在没有开发工具的平台上也能够修改,部署项目。时间长了,从代码的编辑到发布很多过程都忘了,项目的自动构建是一个帮你自动记忆这些过程,Java最常用的是ant、maven。
养成撰写文档的好习惯:一般专业的项目都会至少有这些文档,系统需求规格说明书、设计规格说明书、安装文档、用户说明和使用手册。
8.回过头来,以几个经典的开源项目(Jive或者Peterstore),用你最喜欢的开发工具,熟练地去改造他们吧。
另附一些java精华网站网址:
java technology: http://java.sun.com
jakarta site: http://jakarta.apache.org
ibm develops: http://www-128.ibm.com/developerworks/
struts: http://struts.apache.org/
hibernate: http://hibernate.bluemars.net/
spring framework: http://www.springframework.org/
server side:http://www.theserverside.com/tss
matrix-与java共舞: http://www.matrix.org.cn/
java爱好者: http://www.javafan.net/resource/index.jsp
java 流氓: http://www.kissjava.com/
天极门户: http://www.yesky.com
j2ee技术文档: http://www.j2eesp.com
java研究: http://www.javaresearch.org
javaNB: http://www.javanb.com/
jee1.4 http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html
springside http://www.springside.org.cn/
xdoclet http://xdoclet.sourceforge.net/xdoclet/
xfire: http://xfire.codehaus.org/
displaytag http://displaytag.sourceforge.net