一位项目经理的博客内容
如今。经历了8年的开发。最终能够有一点东西,供当年和我一样喜欢Java、想从事于java软件开发的朋友们參考。
1 java语法。
通过不论什么一本Java入门书籍,都能够学会Java的基本的语法。
千万不要觉得,你把书上的样例程序都能写出来就算学会了Java语法。
要想真正掌握。还须要做大量的測试题。对语法不准确的理解。会使你写的代码出现逻辑错误。而这些错误会使你在真正的项目开发中吃尽苦头:你觉得正确才会写上去。而在几十万行代码中找出几行有逻辑错误的代码,很困难。
由于你差点儿不会怀疑你觉得正确的代码存在错误。
2 经常使用类。永远不要写别人已经实现的代码。有非常多功能,用JDk中现有的类就能够完毕。你须要熟悉JDK.能够通过研究JDK帮助文档和JDK源码的方式,逐渐了解,你须要的类都在什么地方。
一方面,要熟悉有哪些能够直接使用的资源,还有一方面。学习一下。SUN公司的project师如何写代码。
3 IDE 集成开发环境。
如今企业最经常使用的是IBM公司的eclipse。
类似的还有JBuilder,Idea,NetBeans等等。毕竟。仅仅有5%的顶尖高手在使用简单的文本编辑器在写Java代码。多数程序猿都是在使用这些东西。
4 数据库.MySql,Oracle,DB2.小项目多数使用MySql这种免费数据库。
大一些的项目会考虑使用Oracle或者DB2. Java项目非常少使用SqlServer.因此,你还须要学习数据库方面的一些知识。能够从SQL语言開始。这些数据库都支持标准SQL.学会主要的SQL,參考详细的数据库手冊,就能够完毕一般的项目开发了。
当然,要想使你的程序执行的效率更高。须要更深入的学习。大部分的程序优化,都是从这部分開始的。
5 JDBC Java数据库连接。
使用Java程序操作数据库。
这部分很重要。差点儿全部的企业项目都会用到。
6 HTML CSS Javascript。
HTML--(HyperTextMark-upLanguage) 超文本标记语言。 CSS --(Cascading Style Sheets)层叠样式表。你千万不要以为,CS又出了加强版。呵呵。 JavaScript--是一种由Netscape的LiveScript发展而来的脚本语言.
准确的说,这些东西和Java语言本身关系不大。
可是。如今的企业项目,以B/S结构的居多。因此,我们的Java程序,会有大量的机会和它们打交道。须要提前准备一下。
7 你须要学习怎样使用及管理WEBserver,比如tomcat。而且知道怎样在其基础上扩展和维护WEB程序。怎样使用它的附加服务。如连接池。
8 JSP Servlet.这两个是0基础Java程序猿必须掌握的基本技能。是全部B/S结构框架的基础。
对应的,还须要学习EL以及JSTL(StandardTagLibraries)和能够选择的第三方TagLibraries,以提高表示层的处理能力。
9 企业流行框架 Struts,Spring,Hibernate等。
10 Java设计模式。有一些特殊的功能。仅仅有依照特定的设计模式才干实现。
假设你有了5万行以上的代码经验,能够開始研究一下设计模式。
11 你还要跟上技术发展的步伐,了解在Java项目中使用的新技术。如Ajax等。
还有
眼下,JAVA是开发者的热宠,非常多论坛都有不少热爱JAVA的开发者,也有不少想成为JAVA程序猿。但苦于不知道该怎样学习。也不清楚该学些什么知识才干成为一个JAVA程序猿。本人在这里抛砖引玉,和大家讨论成为一个JAVA0基础程序猿应该具有的知识,与大家共享。个人觉得想成为一个合格的JAVA0基础程序猿应该具备例如以下知识:
一、面向对象的知识:JAVA是一个面向对象的开发语言,因此熟悉面向对象对学习JAVA非常有必要。您要了解:什么是对象,什么是类。什么是封装。什么是多态,什么是继承;什么是抽象类,什么是接口。了解了概念后,您还须要这些概念是怎样体现的,如类和对象有什么差别?类是怎样封装的?
二、JAVA语法:假设您已经有了开发经验,恭喜您。您学习JAVA语法来将比較easy。假设您有C++等面向对象语言的开发经验。您仅仅需简单的翻看一下介绍JAVA的相关书籍就能够了。
假设您是新手。没有关系。您下些工夫,好好研究一本JAVA0基础教程之类的书就能够了。学习了JAVA语法。加上面向对象的知识,仅仅有您用心,您就能够写出来比較好的JAVA代码了。假设您再抽空熟悉一下JAVA编程规范,您代码的水平就应该不俗了。
三、JSP和HTML:在我国的绝大多数公司,做JAVA程序猿都少不了和JSP以及HTML打交道。因此,想成为JAVA程序猿就不可避免的要熟悉JSP和HTML,您最好能知道JSP的几个内置对象,如Session。Request。Reponse,。以及经常使用的JSP标签,如include,userBean等。虽然一些工具会帮您生成HTML代码。但您还是要熟悉比方title,<table>。<tr>,<td>等。假设您再熟悉一下JS和CSS就更好了,那会使您制作的页面更友好。
四、WebServer:熟悉了以上三种,能够肯定的说您已经能够制作出来JSP页面了。您也能够在您的页面里使用自己开发的JAVA类(JAVABEAN)了,但您的页面总要跑起来才干看到您要的效果,这就要求您必须熟悉一种WebServer,比方:TOMCAT,RESIN等。
您要熟悉怎样公布您的应用,怎样利用WebServer的数据库资源等。
五、开发工具:大家都知道。开发工具能够帮助您更好更快地开发。因此熟悉几种开发工具非常有必要。眼下JAVA的开发工具比較流行的有JBuilder,IDEA,Eclipse。HTML的开发工具有Dreamweaver等。
六、熟悉一种框架:熟悉一种框架事实上是成为JAVA程序猿的一种可选知识。但眼下开发B/S结构的应用的开发小组。都差点儿相同会採用一种框架来构建自己的应用系统。框架都会有很多可重用的代码,良好的层次关系和业务控制逻辑。基于框架的开发使你能够省出非常多的开发成本。
眼下比較流行的框架有Struts和WAF等。
我要说明,您要想从本文中学到一些JAVA高级知识是学不到的,由于本文告诉您的作为一个(高级)JAVAproject师应该学什么,而不是告诉您详细的知识细节。
一、JAVA。
要想成为JAVA(高级)project师肯定要学习JAVA。一般的程序猿也许仅仅需知道一些JAVA的语法结构就能够应付了。
但要成为JAVA(高级)project师。您要对JAVA做比較深入的研究。
您应该多研究一下JDBC、IO包、Util包、Text包、JMS、EJB、RMI、线程。假设可能,希望您对JAVA的全部包都浏览一下,知道大概的API,这样您就发现事实上您想实现的非常多功能,通过JAVA的API都能够实现了。就不必自己费太多的脑经了。
二、设计模式。事实上写代码是非常easy的事情,我相信您也有同感。但怎样写得好就比較难了。这个“好”字包含代码可重用性,可维护性,可扩展性等。
怎样写出好的代码往往要借助一些设计模式。当然长期的代码经验积累,仅仅要您用心。会使您形成自己代码风格。相信您的代码也比較符合代码的可重用性,可维护性,可扩展性。但既然前人已经给我们总结出了经验,我们何不踩着前人的肩膀前进?
三、XML。
如今的系统中不使用XML差点儿是不可能的。
XML的功能很强大,它能够做数据转换、做系统的配置、甚至可保存您的系统业务数据。因此您必须了解XML,包含它的语法。结构。您还须要比較熟练的使用解析XML的一些API,比方JDOM,SAX等。由于在我们一般的项目中。XML往往担当系统配置信息的作用。您须要用这些API解析这些配置信息,开发完美的项目。
四、精通使用一种或两种框架。像在《怎样成为java0基础程序猿》中提到的那样,“框架都会有很多可重用的代码。良好的层次关系和业务控制逻辑。基于框架的开发使你能够省出非常多的开发成本”。但我这里希望您能精通,很多其它的是希望您能通过框架的使用了解框架的思想。
这样您在开发一个项目时思路会开阔一些,比方您会想到把SQL语句与您的JAVA代码分开。再比方您会考虑把您的业务逻辑配置到XML或者数据库中,这样整个项目就非常easy扩张了。
五、熟悉主流数据库。事实上真正比較大的项目都是有人专门做数据库的,但往往非常多项目要求作为(高级)project师的您也參与数据库的设计以及SQL的编写。所以为了更好的为国家做贡献。建议您还是多了解一些主流数据库,比方SQLSERVER,ORACLE,多连接SQL和存储过程以及触发器。
假设您不是“科班”出身,您还须要补充一些数据库原理方面的知识。
六、精通一种或两种WEBServer。虽然我再《怎样成为java0基础程序猿》里讲过它,我还是要强调您要精通一种或两种。由于作为JAVAproject师,特别时想成为高级JAVAproject师的您,您不可避免地要部署您的项目到WebServer上,并且仅仅有当您精通一种WebServer。您才可能最大限度地使用它的资源。这往往能够节省非常多时间和精力。
七、UML。
我知道您肯定想成为高级project师,因此您有必要了解或熟练或精通UML,这取决于您有多大决心想成为高级project师和项目经理。在比較正规的开发团队中,UML是讨论项目的交流工具,您要想做一个软件project师,您至少要能看懂,您要想做高级project师。您要能通过它来描写叙述您对项目的理解,虽然这不是必须,但却非常重要。
八、站在高度分析问题:这不是一个知识点,也不是通过书本就能学得到的。
仅仅所以提到这一点。是由于我比您还着急,我希望您更快的成为一个高级的软件project师,而不是一个一般的软件project师。希望您在工作中多向您的系统分析员、需求分析员、系统设计员学习,多站在他们角度上去看您在开发的项目。在最好在项目之初先在您的脑海里对项目有个大致的分析、设计,然后和他们进行比較,找找区别,想想缺点。
九、工具。与在《怎样成为java0基础程序猿》里提到的不同。您在这个阶段可能接触到不同的工具了,虽然您还须要使用JB或者IDEA。但能可能对ROSE。Together要多了解一些。由于您要画UML了。不要再对Dreamweaver等HTML编辑器情有独钟了,那些JSP页面让0基础程序猿去写吧。