我做開(kāi)發(fā)也是有很長(zhǎng)一段時(shí)間了,現(xiàn)在回想自己學(xué)習(xí)java的經(jīng)歷,當(dāng)時(shí)真希望有一部大體的學(xué)習(xí)框架,這樣自己就不會(huì)走許多彎路了,這是我在這一年工作和多年學(xué)習(xí)中的經(jīng)驗(yàn),希望對(duì)迷茫的java愛(ài)好者有所幫助:
第一步
首先要做好學(xué)習(xí)前的準(zhǔn)備工作:java語(yǔ)言一般用于大型的服務(wù)器程序開(kāi)發(fā),所以有必要了解如下內(nèi)容:Unix開(kāi)發(fā)環(huán)境Unix系統(tǒng)原理、Unix開(kāi)發(fā)環(huán)境、Unix常用命令。熟練掌握Unix常用命令;熟練構(gòu)建下的Java開(kāi)發(fā)環(huán)境。
第二步
然后進(jìn)入Java語(yǔ)言基礎(chǔ)的學(xué)習(xí)階段,學(xué)習(xí)任何一門(mén)語(yǔ)言都要打好基礎(chǔ),曾經(jīng)學(xué)過(guò)高級(jí)程序語(yǔ)言(C,C++等)來(lái)說(shuō),java語(yǔ)言基礎(chǔ)有自己的特點(diǎn),但是基本規(guī)律都是相通的,如:算法基礎(chǔ)、常用數(shù)據(jù)結(jié)構(gòu)、企業(yè)編程規(guī)范。掌握常見(jiàn)的數(shù)據(jù)結(jié)構(gòu)和實(shí)用算法;培養(yǎng)良好的企業(yè)級(jí)編程習(xí)慣。
第三步
掌握java語(yǔ)言基礎(chǔ)后接下來(lái)就是面向?qū)ο笳Z(yǔ)言的共性:Java面向?qū)ο竺嫦驅(qū)ο筇匦裕悍庋b、繼承、多態(tài)等。掌握面向?qū)ο蟮幕驹瓌t以及在編程實(shí)踐中的意義;掌握J(rèn)ava面向?qū)ο缶幊袒緦?shí)現(xiàn)原理。
第四步
JDK核心API語(yǔ)言核心包、異常處理、常用工具包、集合框架。熟練掌握J(rèn)DK核心API編程技術(shù);理解API設(shè)計(jì)原則;具備熟練的閱讀API文檔的能力;JavaSE核心異常處理、多線程基礎(chǔ)、IO系統(tǒng)、網(wǎng)絡(luò)編程、Swing組件、JVM性能調(diào)優(yōu)(JVM內(nèi)存結(jié)構(gòu)剖析、GC分析及調(diào)優(yōu)、JVM內(nèi)存參數(shù)優(yōu)化)、Java泛型、JDK新特性。熟練掌握J(rèn)avaSE核心內(nèi)容,特別是IO和多線程;初步具備面向?qū)ο笤O(shè)計(jì)和編程的能力;掌握基本的JVM優(yōu)化策略。XML XML語(yǔ)法、XML解析(SAX、DOM)、Dom4j組件、Digester組件。熟練掌握XML語(yǔ)法規(guī)則;理解DOM模型;熟悉Java對(duì)XML的各種解析方式。
第五步
SQL語(yǔ)言SQL語(yǔ)句基礎(chǔ)和提高、SQL語(yǔ)句調(diào)優(yōu)。熟練的掌握SQL語(yǔ)句;掌握一定的數(shù)據(jù)庫(kù)查詢(xún)技巧及SQL語(yǔ)句優(yōu)化技巧。Oracle數(shù)據(jù)庫(kù)開(kāi)發(fā)Oracle體系結(jié)構(gòu)及系統(tǒng)管理、Oracle數(shù)據(jù)庫(kù)高級(jí)編程、數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)。掌握Oracle體系結(jié)構(gòu)及核心編程技術(shù)
第六步
連接數(shù)據(jù)庫(kù):JDBC JDBC核心API(Connection、Statement、ResultSet)、JDBC優(yōu)化技術(shù)(緩存技術(shù)、批處理技術(shù)、連接池技術(shù))。理解JDBC作為規(guī)范的設(shè)計(jì)原則;熟練掌握J(rèn)DBCAPI;具備使用JDBC對(duì)數(shù)據(jù)庫(kù)進(jìn)行高效訪問(wèn)的能力。
第七步
軟件工程基礎(chǔ)軟件過(guò)程和軟件活動(dòng);需求設(shè)計(jì)、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)基本原則和文檔規(guī)范;配置管理的基本概念和必要性;CVS基本操作;Ant簡(jiǎn)介理解軟件過(guò)程的普遍概念和基本的軟件活動(dòng);理解迭代的意義;掌握Ant、CVS等常用配置管理及部署工具。
第八步
OOAD及設(shè)計(jì)模式面向?qū)ο蠡驹O(shè)計(jì)原則、工廠模式、策略模式、適配器模式、代理模式等、門(mén)面模式。理解面向?qū)ο笤O(shè)計(jì)的一般原則;理解重用的意義;掌握常見(jiàn)的設(shè)計(jì)模式。
第九步
HTML/CSS HTML基本文檔結(jié)構(gòu)、掌握CSS基礎(chǔ)語(yǔ)法、關(guān)于HTML文檔塊、鏈接、列表、表格、表單等。掌握HTML基本原理;掌握CSS各種選擇器及常見(jiàn)樣式設(shè)置;熟練使用HTML常用元素。JavaScript核心JavaScript語(yǔ)言基礎(chǔ)(數(shù)據(jù)類(lèi)型、函數(shù)、對(duì)象、閉包)、Java DOM編程、事件模型、JavaScript面向?qū)ο缶幊。深入理解JavaScript語(yǔ)言原理;熟練的使用JavaScript對(duì)HTMLDOM進(jìn)行編程;熟練掌握J(rèn)avaScript對(duì)象對(duì)象封裝技巧,為后續(xù)的JavaScript學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。
Servlet/JSPServlet生命周期及Servlet服務(wù)器、Tomcat部署配置、JSP語(yǔ)法、自定義標(biāo)記、JSTL和EL表達(dá)式、JSP新特性、Java Web設(shè)計(jì)模式。透徹理解Servlet核心原理;熟練掌握Servlet API;透徹理解JSP引擎工作原理;透徹理解標(biāo)記庫(kù)原理;熟悉常見(jiàn)的Java Web設(shè)計(jì)模式;為后續(xù)的Java Web開(kāi)發(fā)打下堅(jiān)實(shí)的理論基礎(chǔ)。
第十步
Ajax Ajax基礎(chǔ)、XHR對(duì)象、Ajax設(shè)計(jì)模式、JSON技術(shù)掌握Ajax的基本通信原理;掌握基于XML和JSON的Ajax數(shù)據(jù)規(guī)則。
第十一步
JavaScript框架JQuery、JQuery插件、DWR。掌握J(rèn)Query核心API;了解JQuery基本設(shè)計(jì)原則;了解多種JQuery插件;掌握DWR的基本原理及應(yīng)用技巧。
第十二步
ssh三大框架的學(xué)習(xí),這是企業(yè)實(shí)際應(yīng)用的框架模型:
①.Struts 2.1.6 Struts2核心控制流程、Ognl、Action、Interceptor、,Result、FreeMarker、Struts2標(biāo)記庫(kù)、Struts2擴(kuò)展、Struts2應(yīng)用技巧(輸入驗(yàn)證、消息國(guó)際化、文件上傳和下載、防止重復(fù)提交等)。熟練掌握Struts2核心要件,特別是Interceptor和Result;掌握基于模板技術(shù)的Struts2 UI組件;掌握基于Ognl的數(shù)據(jù)共享方式、掌握Struts2各種定制及擴(kuò)展方式;熟練掌握基于Struts2的Web開(kāi)發(fā)技巧。
②. Hibernate 3.2.1 ORM概念、Hibernate核心API、Hibernate實(shí)體映射技術(shù)、Hibernate關(guān)系映射技巧、HQL查詢(xún)、OSCache及Hibernate緩存技術(shù)。重點(diǎn)掌握Hibernate多種關(guān)聯(lián)映射技巧及其實(shí)用背景,做到在合適的時(shí)候使用合適的關(guān)聯(lián)方式;掌握多種Hibernate查詢(xún)技巧及優(yōu)化技術(shù)。
③.Spring 2.5 Spring Ioc基礎(chǔ)、Ioc注入技巧、對(duì)象高級(jí)裝配(自動(dòng)裝配、模板裝配、組件掃描特性、FactoryBean、對(duì)象生命周期)、SpringAOP原理、AspectJ、Spring JDBC支持、Spring事務(wù)及安全管理;Spring整合Hibernate、Spring整合Struts、Spring MVC簡(jiǎn)介。深入理解Ioc和AOP的基本原理和實(shí)現(xiàn)方式;熟練掌握SpringIoc及AOP實(shí)現(xiàn)方式;熟練掌握Spring事務(wù)管理;熟練掌握Spring與其他組件的整合技術(shù)。