JAVA程序員之路(轉自百度)

很多網友問我學習 Java 有沒有什麼捷徑 , 我說 無他,唯手熟爾 。但是我卻很願意將自己學習的一些經驗寫出來,以便後來者少走彎路 , 幫助別人是最大的快樂嘛!
要想學好 Java ,首先要知道 Java 的大致分類。我們知道,自從 Sun 推出 Java 以來,就力圖使之無所不包,所以 Java 發展到現在,按應用來分主要分爲三大塊: J2SE,J2ME J2EE, 這也就是 Sun ONE(Open Net Environment) 體系。 J2SE 就是 Java2 的標準版,主要用於桌面應用軟件的編程; J2ME 主要應用於嵌入是系統開發,如手機和 PDA 的編程; J2EE Java2 的企業版,主要用於分佈式的網絡程序的開發,如電子商務網站和 ERP 系統。 J2SE 開發桌面應用軟件比起 VC,VB,DEPHI 這些傳統開發語言來說,優勢好象並不明顯。 J2ME 對於初學者來說,好象又有點深奧,而且一般開發者很難有開發環境。所以現在應用最廣泛又最好學的就是 J2EE 了。 J2EE 又包括許多組件,如 Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail 等。要學習起來可不是一兩天的事。
那麼又該如何學習 J2EE 呢?當然 Java 語法得先看一看的, I/O 包, Util 包, Lang 包你都熟悉了嗎?然後再從 JSP 學起。如果你學過 HTML ,那麼事情要好辦的多,如果沒有,那你快去補一補 HTML 基礎吧。其實 JSP 中的 Java 語法也不多,它更象一個腳本語言,有點象 ASP 。然後你就該學一學 Servlet 了。 Servlet 就是服務器端小程序,他負責生成發送給客戶端的 HTML 文件。 JSP 在執行時,也是先轉換成 Servlet 再運行的。雖說 JSP 理論上可以完全取代 Servlet ,這也是 SUN 推出 JSP 的本意,可是 Servlet 用來控制流程跳轉還是挺方便的,也令程序更清晰。接下來你應該學習一下 Javabean 了,可能你早就看不管 JSP HTML 中嵌 Java 代碼的混亂方式了,這種方式跟 ASP 又有什麼區別呢?還好, SUN 提供了 Javabean 可以把你的 JSP 中的 Java 代碼封裝起來,便於調用也便於重用。接着就是 EJB 了, EJB 就是 Enterprise JavaBean, 看名字好象它是 Javabean ,可是它和 Javabean 還是有區別的。它是一個體繫結構,你可以搭建更安全、更穩定的企業應用。它的大量代碼已由中間件(也就是我們常聽到的 Weblogic,Websphere 這些 J2EE 服務器)完成了,所以我們要做的程序代碼量很少,大部分工作都在設計和配置中間件上。至於 JDBC ,就不用我多說了,你如果用 java 編過存取數據庫的程序,就應該很熟悉。還有,如果你要用 Java 編髮送電子郵件的程序,你就得看看 Javamail 了。
好了,對 Java J2EE 有了一些基本概念之後,你就應該編一些程序了,千萬不要紙上談兵哦。最好找一些有實例且帶光盤的書來看,這樣看到好的程序就可以直接 Ctrl+C Ctrl+V ,也不用勞您老大架再親自把它再輸一遍吧,再說直接複製還不用怕出錯,何樂而不爲呢!還有就是要經常上一些好的 Java 編程文章,有好的文章要 Cut 下來,有問題儘管問,只要問題不是太傻,一般高手都會回答你的。下面介紹幾個好的 Java 方面的編程網站:
CSDN
論壇 http://www.csdn.net/ 中國最有名的技術論壇,《程序員》雜誌就是他們出版的,你可以在上面提出問題,馬上就有人回答你,如果你覺得好,你可以給那人加分;
Java
研究組 http://www.javaresearch.org/ 上面有很多原創文章,高手還是挺多的;
Java
開發者 http://www.chinajavaworld.com/ 那裏 Java 資料比較全;
java.com.cn http://www.java.com.cn/
看這域名就知道有多牛,註冊用戶快接近一萬了,同時在線人數也在一千左右,人氣很旺的;
IBM
的開發者網 http://www-900.ibm.com/developerWorks/cn/java/index.shtml IBM 永遠的藍色巨人;

那麼我書也看了,程序也做了,別人問我的問題我都能解決了,是不是就成爲高手了呢?當然沒那麼簡單,這只是萬里長征走完了第一步。不信?那你出去接一個項目,你知道怎麼下手嗎,你知道怎麼設計嗎,你知道怎麼組織人員進行開發嗎?你現在腦子裏除了一些散亂的代碼之外,可能再沒有別的東西了吧!你現在最缺的是實際的工作經驗,而不是書本上那些憑空想出來的程序。所以你快去找一份 Java 的編程工作來做吧(如果是在校學生可以去做兼職啊),在實踐中提高自己,那纔是最快的。不過你得祈禱在公司裏碰到一個高手,而且他還願意不厭其煩地教你,這樣好象有點難哦!
還有一個辦法就是讀開放源碼的程序了。我們知道開放源碼大都出自高手,他們設計合理,考慮周到,再加上有廣大的程序員參與,代碼的價值自然是字字珠嘰,鏗鏘有力(對不起,最近《金裝四大才子》看多了)。學 Java 必讀的兩個開源程序就是 Jive Pet Store. Jive 是國外一個非常著名的 BBS 程序,完全開放源碼。論壇的設計採用了很多先進的技術,如 Cache 、用戶認證、 Filter XML 等,而且論壇完全屏蔽了對數據庫的訪問,可以很輕易的在不同數據庫中移植。論壇還有方便的安裝和管理程序,這是我們平時編程時容易忽略的一部份(中國程序員一般只注重編程的技術含量,卻完全不考慮用戶的感受,這就是我們與國外軟件的差距所在)。 Jive 的資料在很多網站上都有,大家可以找來研究一下。相信你讀完代碼後,會有脫胎換骨的感覺。遺憾的是 Jive 2.5 以後就不再無條件的開放源代碼,同時有 licence 限制。不過幸好還有中國一流的 Java 程序員關注它,外國人不開源了,中國人就不能開源嗎?這裏向大家推薦一個漢化的 Jive 版本 —J 道。 Jive(J 道版 ) 是由中國 Java 界大名鼎鼎的 banq Jive2.1 版本基礎上改編而成 , 全中文,增加了一些實用功能,如貼圖,用戶頭像和用戶資料查詢等,而且有一個開發團隊在不斷升級。你可以訪問 banq 的網 http://www.jdon.com/ 去下載,或到同濟技術論壇的服務器上 ftp://nro.shtdu.edu.cn 去下,安裝上有什麼問題,可以到論壇上去提問。 Pet Store. (寵物店)是 SUN 公司爲了演示其 J2EE 編程規範而推出的開放源碼的程序,應該很具有權威性,想學 J2EE EJB 的朋友不要錯過了。
你一定會高興地說,哈哈,原來成爲 Java 高手就這麼簡單啊 ! 記得我也曾碰到過一個項目經理,號稱 Java 很簡單,只要三個月就可以學會。其實說這種話的人就如當年小日本號稱 三個月拿下中國 一樣大言不慚。不是我潑你冷水,你現在只是學到了 Java 的骨架,卻還沒有學到 Java 的精髓。接下來你得研究設計模式了。設計模式是高級程序員真正掌握面向對象核心思想的必修課。設計模式並不是一種具體 " 技術 ", 它講述的是思想,它不僅僅展示了接口或抽象類在實際案例中的靈活應用和智慧,讓你能夠真正掌握接口或抽象類的應用,從而在原來的 Java 語言基礎上躍進一步,更重要的是,設計模式反覆向你強調一個宗旨:要讓你的程序儘可能的可重用。關於設計模式的資料,還是向大家推薦 banq 的網 http://www.jdon.com/ ,他把 GOF 23 種模式以通俗易懂的方式詮釋出來,純 Java 描述,真是經典中的經典。有時間再研究一下 MVC 結構(把 Model-View-Control 分離開的設計思想)吧,現在很流行的 Structs 就是它的一種實現方式,不過 Structs 用起來實在是很繁,我們只要學習其精髓即可,我們完全可以設計自己的 MVC 結構。然後你再研究一下軟件 Refactoring( 重整 ) 和極限 XP 編程,相信你又會上一個臺階。
做完這些,你不如整理一下你的 Java 代碼,把那些經典的程序和常見的應用整理出來,再精心打造一番,提高其重用性和可擴展性。你再找幾個志同道合的朋友成立一個工作室吧,你可以去承接一些項目做了,一開始可能有些困難,可是你有技術積累,又考慮周全,接下項目來可以迅速作完,相信大家以後都會來找你的,所以 Money 就嘩啦啦的來了。。。。。。
當然你也可以參加一些開源項目,一方面可以提高自己,另一方面也是爲中國軟件事業做貢獻嘛!開發者在互聯網上用 CVS 合作開發,用 QQ,MSN,E-mail 討論聯繫,天南海北的程序員分散在各地卻同時開發同一個軟件,是不是很有意思呢?
下面介紹兩個好的開源項目網站:
湖北省軟件公共開發平 http://gro.clinux.org/
共創聯 http://cosoft.org.cn/
哇,好高興哦,我終於成爲高手了!非也,非也。古人云: 識時務者爲俊傑 。你知道計算機界現在的發展形勢嗎?你知道微軟的 .NET 藍圖和 SUN ONE 計劃之間的明爭暗鬥嗎 ? 你知道計算機技術將向何處發展嗎 ? 其實從各大計算機廠商最近的動作 , 都可以看出來 “Web 服務將是下一代互聯網應用的制高點 ,而微軟的 .NET 藍圖和 SUN ONE 計劃的鬥爭焦點,也就是 Web 服務。 Web 服務就是一個嶄新的分佈式計算模型,它是一系列標準的綜合( XML,SOAP,UDDI,WSDL WSFL 等)。它使得不同語言編寫的軟件能夠輕易的集成起來,使網絡資源和 Web 站點變成一種服務而不是混亂的垃圾場。不遠的將來,我們就可以在家裏點擊一下鼠標,就可以完成出門旅遊的全部準備工作,包括定飛機票,定旅遊線路,定好房間等。請注意,這所有的一切都是 Web 站點間自動完成的,再也不用象現在一樣,表面上是電子商務,實際上很多環節都是人工操作。也許你會覺得這是天方夜談,不過就近的說,你也很有可能承接一個項目,要集成兩個企業的 ERP 系統。很有可能上游企業的系統是用 Dephi 編的,而下游企業的系統是用 Java 編的。你說你是 Java 高手,大家都看者你怎麼做呢。所以啊,你還得學習新技術,如 Web 服務,而且你 Dephi 也要懂一點吧( Dephi6 現在已經提供 Web 服務的控件了)。 你編的 Java 系統,可能要和 .NET 集成,所以你 .NET 要懂一點吧?到最後,你可能發現你已經成爲 Java 高手了,但很多時間卻在搞別的技術。太極張三丰裏說,最厲害的招式就是沒有招式,可能就是這個道理吧!
因爲剛剛興起,所以網上 Web 服務的資料不是很多,我還是給大家推薦幾個網站吧:
中國 UDDI 技術聯 http://www.uddi-china.org/
CSDN
的柴曉路專 http://www.csdn.net/develop/author/ColumnAuthor/fennivel/ (注:柴曉路也是互聯網上一個有名的人物,他發表過很多關於 Web 服務的文章,還出了一書,應該稱的上是中國 Web 服務技術的先行者)
IBM
的開發者網絡的 XML&Web Service 專欄 :
http://www-900.ibm.com/developerWorks/cn/xml/index.shtml?csdn IBM
可是 Web 服務的力推者
你費勁千心萬苦,總算成爲 Java 高手了,怎叫人不由喜極而泣呢!是啊,真不容易,真不簡單,真叫人感動啊!那麼打個電話告訴我吧,什麼?我的電話號碼是多少?昏到,你打電話問不就知道了嗎,真是的 ……

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章