用Java做web開發是一件很愜意的事情。
你一定會說我在說夢話,呵呵~` 慢慢來吧~
- * - 以下均為個人意見,只是拋磚引玉,沒有版權,僅供參考。 - * -
一、開始,萬事開頭難啊!
Java的學習很難,因為它太龐雜了,有很多令人恐懼的(并非語言本身的)細節。
讓我們先看看,我們將碰到哪些難關:
1. 表示
臉面的部分,這里將用到的技術和知識:JSP,Servlet,XML,HTML,JavaScript,CSS等,最好能了解網絡基礎(TCP/IP協議等)。
2. 業務邏輯
核心的部分,這里將用到的技術和知識:Java Bean,XML等。
3. 數據庫
存儲的部分,這里將用到的技術和知識:數據庫的知識,JDBC,XML等。
4. 部署
必備的部分,應用服務器的使用,比如tomcat,或者weblogic?
看起來已經足夠多了吧?No no no,這還不夠!但如果是Getting start嗎?這些已經足夠了!
二、如何開始?
千頭萬緒,從何開始?好吧!現在聽聽我的建議:
1. 如果你對Java語言(純語言)還一知半解?那么去找本Thinking Java吧!不推薦看電子版噢![掌握]
2. 網頁方面,如果你不是做page design的話,就不用深究了,但至少要知道HTML,JavaScript,CSS的基本用法吧?[了解]
3. 好了,現在可以看看JSP/Servlet了。建議別買書,至少我這方面沒發現比sun的官方javadoc更好的資料了。你只需要幾篇相關的教程,google以下,或者就在jr!
(如果有時間建議復習一下Http協議!)
4. JDBC?如果你寫過數據庫應用程序,使用過ADO,那么你應該能很快掌握。
5. 應用服務器?我最中意的是tomcat,你可以挑一款你喜歡的,resin也不錯。教程?不用,它們都有很詳細的文檔,需要配置的地方都充滿了注釋
三、如何進步?
如果你已經70%以上掌握了上面的內容,那么恭喜你,可以更進一步了。深呼吸,確認你已經盡情享受了成功的喜悅,然后我們開始更艱苦的修行...
也許你已經在(二)的實踐中發現了很多問題,很多不便,也許你會抱怨不應該為此浪費時間,還不如繼續你的asp或者php之旅...
真的是這樣么?No no no,別忘了我們用的是Java!
1. 表示層的問題
嘿!我知道你在看著數百行的HTML于Java語言混雜的JSP文件郁悶。不如讓我們想個辦法。篇幅有限,我只告訴你一些名字,你自己去尋找答案 它們是Struts,Tapestry,Turbine ...
2. 數據庫的問題
也許聰明的你已經自己寫了一些JDBC封裝類或者SQL自動生成工具,但是封裝持久層的工作太大了,而且已經有很多現成的工具,如果你不是作研究的化,那么我們還是用現成的吧!檢索它們Hibernate,JDO。
3. 高手只用Notepad/Vim?
呵呵~`肯定有,但這不是唯一標準。我和一些朋友曾經也用emacs寫過東西,那是因為開發環境太次了。
下面幾個IDE推薦給你,有次序之分哦~
a. Eclipse 開源、免費!后臺是IBM,各種插件應有盡有(部分是收費的)。
b. IntelliJ IDEA 除了插件比較少之外,任何一項功能都不在Eclipse之下,遺憾的是它是收費的!
c. JBuilder 大名鼎鼎,Borland的大作。
4. 設計問題
設計模式,學習這么久了,應該聽過了吧!它可以讓很多問題迎刃而解,google it!
5. 架構問題
什么?已經到這種層次了?談到架構我們往往只有選擇的份,看看J2EE吧,還有它的核心模式。
6. 方法論
這是什么東西?哲學?宗教?同樣提供幾個關鍵字:敏捷建模,極限編程,特征驅動開發。
7. 復雜的問題
問題的復雜性往往會出忽我們的預料,我們的原則永遠是:盡量使用標準的、成熟的技術或者解決方案。
不懂?好吧!我們現在要實現一個全文搜索引擎,讓你選擇是用apache的lucene還是自己寫一個?
這方面apache以及其它開源組織有很多我們可以使用的工具和框架,使用它們吧!
好了,這些是我現在能看到的東西。一起努力吧!
學海無涯...