软件开发学习路线
去看看《JAVA學習之路》。拜讀過臺灣蔡學鏞先生的《JAVA夜未眠》,有些文章如《JAVA學習之道》等讓我們確實有共鳴,本文題目也由此而來。
軟件開發之路是充滿荊棘與挑戰之路,也是充滿希望之路。JAVA學習也是如此,沒有捷徑可走。夢想像《天龍八部》中虛竹一樣被無崖子醍醐灌頂而輕松獲得一甲子功力,是很不現實的。
"不走彎路,就是捷徑",佛經說的不無道理。
兩千多年的儒家思想孔孟之道,中庸的思想透入骨髓,既不冒進也不保守并非中庸之道,而是找尋學習軟件開發的正確路線與規律。
從軟件開發人員的生涯規劃來講,我們可以大致分為三個階段, 軟件工程師→ 軟件設計師→ 架構設計師或項目管理師。不想當元帥的士兵不是好士兵,不想當架構設計師或項目管理師的程序員也不是好的程序員。我們應該努力往上走。讓我們先整理一下開發應用軟件需要學習的主要技術。
A.基礎理論知識,如操作系統、編譯原理、數據結構與算法、計算機原理等,它們并非不重要。如不想成為計算機科學家的話,可以采取"用到的時候再來學"的原則。
B.一門編程語言,現在基本上都是面向對象的語言,JAVA/C++/C#等等。如果做WEB開發的話還要學習HTML/JavaScript等等。
C.一種方法學或者說思想,現在基本都是面向對象思想(OOA/OOD/設計模式)。由此而衍生的基于組件開發CBD/面向方面編程AOP等等。
D.一種關系型數據庫,ORACLE/SqlServer/DB2/MySQL等等
E.一種提高生產率的IDE集成開發環境JBuilder/Eclipse/VS.NET等。
F.一種UML建模工具,用ROSE/VISIO/鋼筆進行建模。
G.一種軟件過程,RUP/XP/CMM等等,通過軟件過程來組織軟件開發的眾多活動,使開發流程專業化規范化。當然還有其他的一些軟件工程知識。
H.項目管理、體系結構、框架知識。
正確的路線應該是:B→C→E→F→G→H。
還需要補充幾點:
1).對于A與C要補充的是,我們應該在實踐中逐步領悟編程理論與編程思想。新技術雖然不斷涌現,更新速度令人眼花燎亂霧里看花;但萬變不離其宗,編程理論與編程思想的變化卻很慢。掌握了編程理論與編程思想你就會有撥云見日之感。面向對象的思想在目前來講是相當關鍵的,是強勢技術之一,在上面需要多投入時間,給你的回報也會讓你驚喜。
2).對于數據庫來說是獨立學習的,這個時機就由你來決定吧。
3).編程語言作為學習軟件開發的主線,而其余的作為輔線。
4).軟件工程師著重于B、C、E、?D;軟件設計師著重于B、C、E、?D、F;架構設計師著重于C、F、H
總結
- 上一篇: 谈谈我对SEO快排现象的观察及其背后原理
- 下一篇: 一台电脑同时配置github私人账户和公