Posted on 2006-06-14 15:15
氧氣中毒 閱讀(565)
評論(1) 編輯 收藏 所屬分類:
程序思想
JAVA學習之路---學習路線及要點
2.軟件開發(fā)學習路線
兩千多年的儒家思想孔孟之道,中庸的思想透入骨髓,既不冒進也不保守并非中庸之道,而是找尋學習軟件開發(fā)的正確路線與規(guī)律。
從軟件開發(fā)人員的生涯規(guī)劃來講,我們可以大致分為三個階段,軟件工程師→軟件設(shè)計師→架構(gòu)設(shè)計師或項目管理師。不想當元帥的士兵不是好士兵,不想當架構(gòu)設(shè)計師或項目管理師的程序員也不是好的程序員。我們應該努力往上走。讓我們先整理一下開發(fā)應用軟件需要學習的主要技術(shù)。
A.基礎(chǔ)理論知識,如操作系統(tǒng)、編譯原理、數(shù)據(jù)結(jié)構(gòu)與算法、計算機原理等,它們并非不重要。如不想成為計算機科學家的話,可以采取"用到的時候再來學"的原則。
B.一門編程語言,現(xiàn)在基本上都是面向?qū)ο蟮恼Z言,JAVA/C++/C#等等。如果做WEB開發(fā)的話還要學習HTML/JavaScript等等。
C.一種方法學或者說思想,現(xiàn)在基本都是面向?qū)ο笏枷耄∣OA/OOD/設(shè)計模式)。由此而衍生的基于組件開發(fā)CBD/面向方面編程AOP等等。
D.一種關(guān)系型數(shù)據(jù)庫,ORACLE/SqlServer/DB2/MySQL等等
E.一種提高生產(chǎn)率的IDE集成開發(fā)環(huán)境JBuilder/Eclipse/VS.NET等。
F.一種UML建模工具,用ROSE/VISIO/鋼筆進行建模。
G.一種軟件過程,RUP/XP/CMM等等,通過軟件過程來組織軟件開發(fā)的眾多活動,使開發(fā)流程專業(yè)化規(guī)范化。當然還有其他的一些軟件工程知識。
H.項目管理、體系結(jié)構(gòu)、框架知識。
正確的路線應該是:B→C→E→F→G→H。
還需要補充幾點:
1).對于A與C要補充的是,我們應該在實踐中逐步領(lǐng)悟編程理論與編程思想。新技術(shù)雖然不斷涌現(xiàn),更新速度令人眼花燎亂霧里看花;但萬變不離其宗,編程理論與編程思想的變化卻很慢。掌握了編程理論與編程思想你就會有撥云見日之感。面向?qū)ο蟮乃枷朐谀壳皝碇v是相當關(guān)鍵的,是強勢技術(shù)之一,在上面需要多投入時間,給你的回報也會讓你驚喜。
2).對于數(shù)據(jù)庫來說是獨立學習的,這個時機就由你來決定吧。
3).編程語言作為學習軟件開發(fā)的主線,而其余的作為輔線。
4).軟件工程師著重于B、C、E、 D;軟件設(shè)計師著重于B、C、E、 D、F;架構(gòu)設(shè)計師著重于C、F、H。
3.如何學習JAVA?
3.1 JAVA學習路線
3.1.1 基礎(chǔ)語法及JAVA原理
基礎(chǔ)語法和JAVA原理是地基,地基不牢靠,猶如沙地上建摩天大廈,是相當危險的。學習JAVA也是如此,必須要有扎實的基礎(chǔ),你才能在J2EE、J2ME領(lǐng)域游刃有余。參加SCJP(SUN公司認證的JAVA程序員)考試不失為一個好方法,原因之一是為了對得起你交的1200大洋考試費,你會更努力學習,原因之二是SCJP考試能夠讓你把基礎(chǔ)打得很牢靠,它要求你跟JDK一樣熟悉JAVA基礎(chǔ)知識;但是你千萬不要認為考過了SCJP就有多了不起,就能夠獲得軟件公司的青睞,就能夠獲取高薪,這樣的想法也是很危險的。獲得"真正"的SCJP只能證明你的基礎(chǔ)還過得去,但離實際開發(fā)還有很長的一段路要走。
3.1.2 OO思想的領(lǐng)悟
掌握了基礎(chǔ)語法和JAVA程序運行原理后,我們就可以用JAVA語言實現(xiàn)面向?qū)ο蟮乃枷肓恕C嫦驅(qū)ο螅且环N方法學;是獨立于語言……
……
……
3.2.5 不局限于JAVA
很不幸,很幸運,要學習的東西還有很多。不幸的是因為要學的東西太多且多變,沒時間陪老婆家人或女朋友,導致身心疲憊,嚴重者甚至導致抑郁癥。幸運的是別人要搶你飯碗絕非易事,他們或她們需要付出很多才能達成心愿。
JAVA不要孤立地去學習,需要綜合學習數(shù)據(jù)結(jié)構(gòu)、OOP、軟件工程、UML、網(wǎng)絡編程、數(shù)據(jù)庫技術(shù)等知識,用橫向縱向的比較聯(lián)想的方式去學習會更有效。如學習JAVA集合的時候找數(shù)據(jù)結(jié)構(gòu)的書看看;學JDBC的時候復習數(shù)據(jù)庫技術(shù);采取的依然是"需要的時候再學"的原則。
4.結(jié)束語
需要強調(diào)的是,學習軟件開發(fā)確實有一定的難度,也很辛苦,需要付出很多努力,但千萬不要半途而廢。本文如果能對一直徘徊在JAVA神殿之外的朋友有所幫助的話,筆者也欣慰了。哈哈,怎么聽起來老氣橫秋呀?沒辦法,在電腦的長期輻射之下,都快變成小老頭了。最后奉勸各位程序員尤其是MM程序員,完成工作后趕快遠離電腦,據(jù)《胡播亂報》報道,電腦輻射會在白皙的皮膚上面點綴一些小黑點,看起來鮮艷無比……