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