2005年3月27日 晴 於 北京交通大學16號宿捨樓
今天上午比較高興,去年參加了一個攝影比賽,送出作品後一直沒有消息,一直以為是石沉大海了,漸漸了也忘卻了。昨天晚上突然收到消息,說作品獲得了一等獎,叫我今天早上去領獎。雖然只是學校裡面的一次小比賽,而且獎品也只是一套書而已,不過還是有一種興奮的感覺。其實寫程序也差不多,當看見自己寫的程序被別人使用的時候,哪怕只有一個人用你的程序,你也會有一種莫名的興奮。比較,你的成果得到了別人的肯定。
呵呵,不想再在日記中講道理了。我同學看了我前幾天的日記,說我想一個老師在講課,總是以某種口氣在說教,不知道大家的感覺怎樣。其實說真的,我只是將自己心中的感受寫出來而已,不想添加任何修飾地表露在我的blog中。嗯,那今天說說使用什麼樣的開發環境吧。
對於初學的人,我強烈建議你還是從Notepad+JDK+Console開始吧。不過說實話,去年我開始學習的時候,notepad用了兩天就煩了,後面改用UltraEdit,主要是語法高亮和行號的問題,它們可以很方便地幫你查出錯誤。說得嚴重一點,一定要學會在命令行下編譯Java程序,這樣你才能比較好的了解從寫代碼到編譯到調試到運行的整個過程。
很多人已開始就是用JBuilder,但是這種集成環境會使你失去學習許多東西的工具。比如學習圖形界面的時候,用JBuilder是非常方便的,拖拉幾個控件,馬上就可以自動生成代碼了,但是當界面出現問題的時候,如果你沒有自己寫圖形界面的經歷,是不容易找到錯誤的。舉一個再簡單一點的例子,很多同學都做過網頁,但是問道他們用什麼做的,一般的回答都是FrontPage或者Dreamweaver,誠然,現在再一行一行地寫html代碼是不現實的,但是用fp或者dw開發的時候,尤其是早期的版本,有時會出現一些莫名其妙的錯誤,這個時候,懂代碼的就能夠直接從代碼處解決了,如果對Html一竅不通,恐怕得花上很長一段時間,有時甚至根本解決不了。
曾經有人問過我main方法的問題,public static void main(String[] args),這個語句,估計初學的時候,尤其是沒有學過Cpp的時候,會對這一行代碼郁悶很久,總是弄不明白,其實當初我就是這樣。直接按老師課上說的來解釋,解釋到最後我也糊塗了,後來給他們寫了一段代碼,告訴他們,這個語句是程序執行時候的一個入口,args是參數,就像copy a.txt b.txt這樣,每個字符串就是一個參數,這樣就基本解釋清楚了。所以說,從命令行開始,能夠理解程序各種更加低級的結構,這樣在出現問題的時候,你也能更好地解決。
當你對java,Javac等命令用的比較熟悉的時候,估計你的程序也開始慢慢變長了,這個時候,你可以選擇其他的工具了。當然,如果你已經對UE+JDK+Console已經產生了感情,想繼續用下去,我也不反對。其實這方面我的經驗也不多,我也是從今年寒假開始才用的。用過幾個,簡單給大家介紹一下。
最早使用的是JCreator,本來開始就想用JBuilder的,不過寒假的時候在家裡,我那台心愛的電腦是6年前的東西了,雖然升級了幾次,不過運行JB還是很成問題,所以選擇了JC。JC作為輕量級的開發平台,感覺上使用得還不錯,界面比較簡單,容易入門,比較適合初次接觸這些開發工具的人。不過功能較少,用到後面圖形界面和輸入輸出的時候就感覺有些不方便了。後來回到學校,下載了JDK5.0,裡面捆綁了NetBeans,就嘗試著使用,它最大的好處就是免費,估計比較適合公司使用,畢竟公司裡面對版權問題比較重視的,尤其是大公司,要不容易被人抓住把柄。而且NB有中文版本,中文界面會使你的入門變得非常簡單,其他的各種功能都比較完善,可以適合J2SE大多數的開發了。但是有一個比較不好的是,NB是用Java寫的,所以執行速度相對要慢一些,在一些比較落後的機器上,估計會比較明顯。
我現在使用的是Eclipse3.0,主要是圖形界面開發的時候SWT比較好使,好看而且速度上比AWT和Swing要好,所以一直使用,各種設置都比較人性化,感覺也不錯,最新版本好像還沒有中文化。不過因為EP只是一個平台,所有的開發以插件的形式存在,所以安裝了之後除了Java,其他還要配置。如果你的e文比較不行的話,估計還是要費上一些心思的。至於號稱現在最好的開發工具JBuilder,我一直都沒有用過。原來上課的時候用過幾次,感覺太占資源了,所以一直沒有安裝。既然沒有使用經驗,也不敢妄加評論了。
以上是我使用過的開發工具,如果你是老鳥的話,估計本文對你的作用基本為零。不過作為新手,我當年就為了這些方面的事情費了好長時間來選擇,所以估計對新手還是有一定的幫助的。選擇了工具,接下來應該就是寫代碼了,以後我會把我的一些心得寫在這裡,也歡迎大家批評指教,共同學習。
呵呵,宿捨要熄燈了,明天再繼續吧。
。。。(待續)