dream.in.java

          能以不變應(yīng)萬變是聰明人做事的準(zhǔn)則。萬事從小事做起,積累小成功,問鼎大成功,是成功者的秘訣。

          java學(xué)習(xí)路線

          導(dǎo)讀:我們學(xué)習(xí)Java大概有3個方向:

               第一,桌面系統(tǒng),包括C/S結(jié)構(gòu);

               第二,J2ME,面向無線領(lǐng)域,很有潛力的家伙,看看中國的手機(jī)用戶就知道了。

                第三,面向企業(yè)應(yīng)用、計算的平臺,J2EE.

          初次涉及Java領(lǐng)域,感覺到Java入門是好像沒有C,C++入門快,工具也沒有什么Turbo C,Visual C++好用(自己的破機(jī)器實在陪不起JBuilder,貪婪的家伙,以后一定要收拾她)。什么JAVA_HOME,CLASSPATH,虛擬機(jī)等概念都是初次基礎(chǔ),旁邊的人都很少用Java的。感覺Java就是做Applet的。慢慢的知道了http://java.sun.com ,開始知道Java博大精深。讓我不可思議的是JAVA 2,JDK,J2SE,J2EE,J2ME等新名詞在自己的腦海里蔓延。慢慢的自己知道了JCP組織是制定Java相關(guān)規(guī)范的發(fā)源地http://java.jcp.org ,于是訂閱了一份郵件列表。真是好東西啊,定期有Java的最新動向,所以Java的動態(tài)盡收眼里,建議大家也去訂閱一份。免費(fèi)的。自己動手下載了Java(TM) 2 SDK和Java(TM) 2 SDK Documentation后,不懂的就查Java(TM) 2 SDK Documentation,特別好用,也不需要什么手冊之類的,建議大家都要有一份。

          搭起Java開發(fā)環(huán)境后,記得還是用UltraEdit編輯并編譯的(在其中可以配好Java的編譯環(huán)境)。慢慢的改用JCreator了。不錯,至少很多方面有改進(jìn)。最開始賣了一套 2本書,還不錯。對于入門來說足夠了。慢慢的知道 是一本好書,后來才知道,有了Java經(jīng)驗后,看這本書特別過癮,所以現(xiàn)在還經(jīng)常翻翻。周而復(fù)始的看,效果特別好。慢慢的知道了Oreilly公司(http://www.oreilly.com)出的圖書不錯,很高雅,國內(nèi)翻譯的也還可以(http://www.oreilly.com.cn)。本人收集了很多Oreilly的原版圖書,有需要的可以和我聯(lián)系(Acrobat pdf格式)。慢慢知道了jjhou這個人.(http://jjhou.csdn.net )以及他的個人網(wǎng)站,最讓我感興趣的是jjhou老師寫的散文,書評,很有收獲,不是為技術(shù)而技術(shù)。很有趣味性。其中, http://www.epubcn.com 上有很多美麗的圖書。

          不知道什么時候,要開始干項目了,以前從書上看到的東西,慢慢的在項目中有了很好的機(jī)會去溫習(xí),慢慢的有了感覺,開始主要是用Swing,開發(fā)桌面系統(tǒng),放置一個按鈕怎么也放不好,后來才知道有一個布局管理器???,這個婆婆的Java也討厭的很。開始涉及到數(shù)據(jù)庫訪問,JDBC。后來我才知道,Sun的Java網(wǎng)站有一個Java Tutorial。(http://java.sun.com/docs/books/tutorial/ )。同時,也知道了蔡學(xué)鏞先生的sleepless in java(http://www.oreilly.com.tw/sleepless/index.htm ),太美了,美的很。 滿滿的,OReilly, http://www.onjava.com/ 也是不錯的地方。都有很多優(yōu)秀的文章。http://www-900.ibm.com/developerWorks/cn/index.shtml,也很棒。

          每次,美美的享用一頓大餐后,也來也覺得自己是不是應(yīng)該換一種學(xué)習(xí)方式,因為這樣學(xué)習(xí)效果不太好。比較亂。讓我想起了Java Specification,對,我開始研究Java規(guī)范了。最開始下載的規(guī)范是JDBC Specification,很多概念一目了然,尤其是DATABASE的事務(wù)性控制,自己對于她的理解慢慢的有了較為深入的了解。對于開發(fā)C/S結(jié)構(gòu),比如,Swing+JDBC,開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng),讓我學(xué)會開發(fā)兩層結(jié)構(gòu)的應(yīng)用系統(tǒng)。很神氣。

          也不知道什么時候要開始開發(fā)一個網(wǎng)站,基于Linux+JSP+JavaBean+Oracle的系統(tǒng)。很是有意思。為什么這么說呢?因為不同于Swing+JDBC的開發(fā)模式,系統(tǒng)之間多了一層(JavaBean,姑且就這么叫吧!嘻嘻);同時,很多開發(fā)技術(shù)和面向左面系統(tǒng)不一樣,比如分頁技術(shù)。

          ------------------------------------------------------------------------------------------------- 完成項目后,自己對于Java的很多方面都比較了解了。開始思考一個問題,J2EE是什么東西?。我們學(xué)習(xí)Java大概有3個方向,第一,桌面系統(tǒng),包括C/S結(jié)構(gòu);第二,J2ME,面向無限領(lǐng)域,很有潛力的家伙,看看中國的手機(jī)用戶就知道了。第三,面向企業(yè)應(yīng)用、計算的平臺,J2EE.
          -------------------------------------------------------------------------------------------------

          在痛苦的抉擇后,我選擇J2EE..分享J2EE給我?guī)淼目鞓?。學(xué)到現(xiàn)在,最大的感覺,就是: 簡單就是美,美就是Java.不會有學(xué)MFC的痛苦,也不會有去分析STL的艱辛,網(wǎng)路應(yīng)用上一點(diǎn)也不遜色于C++。開始進(jìn)入我的J2EE之旅。

          還是下載了一份J2EE規(guī)范,一份J2EE SDK。開始研究J2EE,結(jié)合http://java.sun.com/j2ee/tutorial/index.html 提供的J2EE Tutorial開始研究了。大概過了1個月,開始有感覺了,也就在這個時候,需要我去完成一個J2EE構(gòu)架方面的項目。差不多邊學(xué)編寫完成了,很多概念在寫完后都不是很清晰,因為東西太多了,主要是基于JSP(Servlet)+Session Bean+EIS構(gòu)架開發(fā)系統(tǒng)。當(dāng)然也學(xué)到很多東西,至少對SB EJB的編寫不成問題。懂得了JSP如何調(diào)用EJB……..

          完成項目后,我開始研究Java Pet Store了,很是過癮。開始知道了Servlet過濾器,XML方面較為全面的知識,知道了J2EE整個框架中各種技術(shù)的實際應(yīng)用。慢慢的,開始研究WebLogic配置好的Pet Store(也是Sun公司的)。慢慢的分析兩者的不同之處。開始對J2EE Specification有了很好的感覺。因為J2EE Specification本身是很嚴(yán)肅的,但Pet Store給出了活力。在反復(fù)的學(xué)習(xí)中,我明白了J2EE構(gòu)架的70—80%。新的問題又出來了,實際企業(yè)中會如何建構(gòu)一個J2EE系統(tǒng)呢?帶著這個問題,我開始分析Core J2EE Patterns,這本書。同時,也有EJB Design Patterns。慢慢的,開始知道了J2EE的魅力所在,知道了J2EE為什么會在企業(yè)中得到較為好的認(rèn)可。大家都知道,設(shè)計模式一詞,在公司上班,你們的老板會看你的代碼嗎?會贊賞你的DP很好嗎,我想很少。在完成你的工作進(jìn)度之余,加班,加班,再加班,我想你沒有更多的時間去分析研究DP.但,J2EE框架不一樣,她內(nèi)置了很多優(yōu)秀的設(shè)計模式,我們在設(shè)計開發(fā)、構(gòu)架一個J2EE系統(tǒng)中用到了很多設(shè)計模式。比如,MVC,EJB中封裝的DAO設(shè)計模式。構(gòu)架J2E系統(tǒng)用Session Fa?ade,Message Fa?ade設(shè)計模式也不會太困難。這也是后來J2EE吸引我的地方。慢慢的我知道了,作為一個J2EE開發(fā)者,我們要掌握其中的核心內(nèi)容。我個人認(rèn)為,3方面很重要。實施EJB系統(tǒng)常用的架構(gòu)、設(shè)計模式,比如session fa?ade、message fa?ade、DTO等。J2EE系統(tǒng)構(gòu)架中常用的模式。UML-> EJB,EJB->UML相互映射。現(xiàn)在也一樣在研究。

          善于享受孤獨(dú),幸好還有J2EE!

          網(wǎng)絡(luò)上、書店都提供了很多資料,很多方式都可以得到J2EE方面的資料。如何系統(tǒng)的、高效的學(xué)習(xí)J2EE這個問題擺在我們面前。比如, 有些人在看完一大堆書后,動起手來時還是不知道怎么開始。等等這些問題是我們最難處理的。如何尋找到一條很好的方式方法呢?

          其實, 換一個角度來看,比如,學(xué)英語,一共有三個層面的東西,首先是詞匯,然后是語法,再者是習(xí)慣用法(希望讀者能夠從程序設(shè)計的角度考慮問題,看看這兩者有什么相似之處,其實他們的邏輯是一樣的)。還比如,上數(shù)學(xué)課,老師在黑板上解題,大家都很輕松得聽懂,自己動手時就會有很多問題。這些看來很簡單的問題,其實都包含一個道理:



          理論聯(lián)系實際,理論指導(dǎo)實踐。



          我們的理論在于,我們要有很好的方法。有些人看了很多書,寫了不少程序,水平還是提高得很慢,很難跨越這道難關(guān)。還是方法問題。當(dāng)然,我所談?wù)摰姆椒?,是自己的心得,體會,大家都有自己很獨(dú)特的方法。沒有絕對好、絕對壞的方法,看作用對象是誰。所以這里我們重點(diǎn)看看我這文章中所會提出來的方法。大家來評論評論。

          J2EE是現(xiàn)在進(jìn)行時。我們知道J2EE由很多技術(shù)構(gòu)成,比如,EJB、XML、JDBC、RMI、JSP、Servlet、。。。。等等這些,又包含很多內(nèi)容。 無論這些具體的技術(shù)會怎么發(fā)展,怎么變化,我們要抓住主線,那就是掌握J(rèn)2EE構(gòu)架的精髓。用什么來分析呢,作用對象自然是J2EE Specification(最新版是1.4,http://java.sun.com/j2ee )?。?!當(dāng)然學(xué)習(xí)J2EE的前提是你對J2SE有了足夠的熟悉了,還有一點(diǎn),你有很好的態(tài)度和興趣。只看J2EE規(guī)范是不夠的,最好結(jié)合產(chǎn)品和例子去思考,我建議大家用JBuilder 7 +BEA WebLogc Platform 7.0,這種開發(fā)模式。為什么這么說呢?首先,JBuilder 7本身的功能就是不錯,應(yīng)該屬于主流Java IDE了。其次,BEA WebLogic Platform 7.0對J2EE Specification最新版支持程度很好,同時也較容易獲取,用的人也多。第三,開發(fā)效率不錯。(Borland網(wǎng)站有一份講述JBuilder 7 + BEA WebLogic 7.0集成開發(fā)的文檔。PDF格式 。http://bdn.borland.com/article/0,1410,28943,00.html )

          JBuilder 7本身提供了很多幫助文檔,有PDF格式,也有HTML格式(采用JavaHelp技術(shù)制作的),另外書店有一些JBuilder的參考用書,個人認(rèn)為沒有必要,第一,提供的版本都比較陳舊;第二,沒有什么內(nèi)容;第三,一般都是抄襲JBuilder 本身提供的幫助文檔。(個人觀點(diǎn),沒有任何商業(yè)目的)。當(dāng)然,你的外語差不多要有四級水平,這個可不能沒有,至少閱讀能力不錯(其實也不是這樣的,我最開始時也是害怕,但開始投入后,英語資料也很簡單,而且很地道!同時提高了您的外語)。WebLogic同樣也不錯,也提供了很多文檔,http://www.bestdown.com 上有一本W(wǎng)ebLogic Bible(針對6.1版),國內(nèi)的BEA公司好像也出了一本,有興趣地可以去, http://www.china-pub.com 看看。

          有了這兩者,我們需要找出合適的對象來學(xué)習(xí)。在這里給出幾方面的素材給大家提供參考。第一,在JBuilder 7的安裝目錄的這個地方,~~:\JBuilder7\samples\Ejb\Ejb20\ESiteWL,有一個很好的例子,ESite。其中用到了Session Fa?ade設(shè)計模式,用到了JSP、Servlet、Session Beans、Entity Beans(cmp)等技術(shù),學(xué)習(xí)過程中不懂得地方可以參考第二。即,第二, http://java.sun.com/j2ee/tutorial/index.html 提供的J2EE Tutorial資料,很不錯,Sun公司的。

          第三,Java Pet Store,剛開始學(xué)習(xí)J2EE技術(shù)分析該例子有點(diǎn)困難,再者這個例子中的J2EE構(gòu)架不是很實用,但她給我們展示了J2EE幾乎所有的核心技術(shù),同時還提供了一本書,Design Enterprise Applications with J2EE Platform,很不錯。第四,對J2EE構(gòu)架比較了解,對EJB,XML,JSP,Servlet等技術(shù)有了較好的理解和程序經(jīng)驗后,建議看看這幾本書?!禞2EE In Practice》、《Core J2EE Patterns》、《Sun Certified ENT Architect for J2EE - Tech Study Guide》、《Java Tools for Extreme Programming - wiley》、《EJB Design Patterns》、《MasteringEJB 2》、《Enterprise JavaBeans,3rd》,夠你看得了:)。

          有了上述基礎(chǔ),結(jié)合大家做項目中的一些經(jīng)驗,我想水平應(yīng)該會有不少提高。在初步掌握上述基礎(chǔ)后,我們每個人都可以有自己在J2EE中的定位,比如有些開發(fā)人員可以考慮把時間花在商務(wù)邏輯層、另外一些喜歡花功夫在表示層,更有貪婪的家伙花在J2EE中所有的層。還有Web Services(J2EE 1.4 Specification的重點(diǎn),估計2003年初推出,今后的重要發(fā)展方向)。

          同時,大家要注意從軟件工程的角度考慮系統(tǒng)設(shè)計,實施,建議用用Together!!!要求大家對UML有足夠的了解。

          posted on 2009-04-24 00:29 YXY 閱讀(135) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 金湖县| 邵武市| 沾化县| 靖西县| 安图县| 邵阳市| 白河县| 通辽市| 松江区| 修武县| 枣庄市| 马尔康县| 黔西县| 连州市| 隆安县| 垦利县| 土默特右旗| 资溪县| 樟树市| 榆社县| 定日县| 太和县| 通化县| 建水县| 南通市| 云南省| 徐州市| 大英县| 宽城| 杨浦区| 清新县| 湟中县| 凌海市| 连江县| 宁陵县| 沁阳市| 乐陵市| 安仁县| 偃师市| 泰顺县| 萝北县|