[入门]理想的小白程序员成长曲线
前面先說一段引子和提外話:
之前吐槽了一片博文,核心思想是:學習計算機編程的初學者必須從當時的主流語言開始學習。順帶叫囂2012年了,初學者再也不要從C/C++開始學習編程。
如果僅僅為了學習流程控制語句(if,switch,for,while),沒有什么是C能做而.net和Java不能做的。
==引子結束==
?
今天具體談談我自己想象中的一個小白的理想成長路經。不估算具體時間,因為學習速度因人而異。只是想羅列下我自己認為的一個通用程序員從小白開始怎樣學習。
==階段1==
1. 選擇Java、.net或PHP(額外選項,如果是前臺小白)中一個作為開始,選哪個好天知道
2. 完成Hello world(運行環境搭建,不用懂搭建過程中的任何概念與知識。只要能熟練操作步驟,并能正常編譯運行)
3. (后臺同學可以不著急學)HTML基礎 + CSS基礎 + DOM + Javascript(包括JQuery) + JSON + XML入門基礎
4. 學習面向對象編程 + 設計模式 + 基礎流程控制語句 + 基本內建數據類型
5.?單元測試框架 + Mock框架 + 源碼管理 + IoC框架
6. 數據庫基礎,增刪改查
階段一結束,背點面試寶典,出去忽悠吧,或者等學了點算法再去。
反正做苦力可能還是有人要的。
==階段2==
7. 算法 +數據結構
8. 根據實際需要,全面展開網頁或者Winform(后臺可以此時學習item 3的基礎網頁知識)
9. 特定語言的常用類庫(工具,網絡,IO,線程)
10. 數據庫高級(視圖,存儲過程,復雜表連接)
11. (后臺同學愛學學,就怕時間精力不夠)瀏覽器兼容性,HTML+CSS高級功能,HTML5特性
12. (后臺同學愛學學,就怕時間精力不夠)PhotoShop等專業軟件
條目不多,因為我也想不清楚。反正能學一遍這些東西了,team里面混混日子還是可以的。
==階段3==
10. 設計模式高級
11. 面向對象分析與設計
12. 軟件測試理論(著重自動化單元測試,UC->TC分析)
13. 軟件開發流程理論
14. 軟件及數據庫性能調優
基本可以做個小leader了。要更上層樓,則需要更多的經驗積累。
以及接觸更多項目部署、配置等等的需要在實際項目中逐漸掌握的能力。
==階段4==
14. 在某個特定domain里面成為專家。比如做財務系統做成注冊會計師,做物業系統做成高級物業師。反正在一些專門業務領域搞得比客戶都熟,都專業。
?
其實這4個階段就是?陳皓?在他文章中提到的“軟件開發‘三重門’”
會編程
技術的基礎
業務智能
?
總之,沒看到里面哪里必須要用C/C++的,或者這個前置條件會帶來多大好處的。
其中學算法完全可以用Java,C#,Javascript來完成。
?
轉載于:https://www.cnblogs.com/Chinese-xu/archive/2012/08/20/2647399.html
總結
以上是生活随笔為你收集整理的[入门]理想的小白程序员成长曲线的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS7.1.2越狱插件推荐:状态栏显示
- 下一篇: iOS7.1.2越狱插件推荐:监控后台运