如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2019年1月14日

如何精進程式設計能力

作者: Fred F.M. Wang (FW知識瑣記) 日期:20190114

下面分享一些精進程式設計能力的方法,由第1點開始,多寫,多看,多學習,一步一步地提升自己程式設計能力。

1. 看看一些程式設計典範的書籍。  
    參考書籍 :
    . Clean Code by Robert C. Martin (中譯 : 無瑕的程式碼:敏捷軟體開發技巧守則)
    . Working Effectively with Legacy Code by Michael C. Feathers (中譯: 修改代碼的藝術)
    . Refactoring: Improving The Design of Existing Code by Martin Fowler, Kent Beck, John Brant,... (中譯:重構─改善既有程式的設計)
    . Beautiful Code: Leading Programmers Explain How They Think by Andy Oram, Greg Wilson(中譯:美麗程式-頂尖程式設計師的思考方式)
    . Code Complete by Steve McConnell (中譯:軟體建構之道)

2. 反覆練習是不二法門,發現問題,立即搜尋解答,或於Stackoverflow中詢問。

3. 實際開發一個專案,找一個實用的案例,開發一個系統。

4. 了解物件導向設計以及建立模組化的能力,採用Design Patterns,學習MVC等Frameworks。
     . 參考書籍 : 深入淺出-設計模式
     . 至少學會一種Framework, 如Java的Sping, Struts等,PHP的CodeIgniter, Laravel等。

5. 了解各種資料結構與資料庫處理的程式設計方法。
    . 資料結構除了一般數字,文字外如陣列(Array),佇列(Queue),序列(List),串列(Linked List),堆疊(Stack), 映射(Mapping),集合(Set)等與相關的操作更需要熟悉。
    . 資料處理方面熟悉SQL是必要的能力


6. 學習一些演算法的程式設計,如各種排序法,搜尋法等。 
    參考書籍 : 打下好基礎:程式設計與演算法競賽入門經典 精選程式設計競賽全真試題及習題解析



7. 養成先思考再下手寫程式的習慣。
   .  包括畫流程圖,決策樹,接近自然語言描述的虛擬碼,UML各種圖形等都有助解析問題協助轉化為程式語言。

8. 進一步了解不同程式語言的異同優劣與用途。
   . 包含C/C++, Java, VB, Python, PHP等流行的程式語言。


9. 保持求知慾,持續學習新的程式語言,新的資料結構,新的演算法,新的Design Patterns。

10. 學習使用工具,包含編譯,除錯,測試,程式品質分析,最佳化等工具。
     . 魔鬼藏在細節裡,臭蟲藏在程式裡,越龐大的程式,越需要工具協助。
     . 好手能快速地開發程式,高手能快速地找到程式的問題,快速除錯。

11. 參加程式設計社群,參與討論與貢獻經驗。

12. 參加Open Source專案開發與測試。

沒有留言:

張貼留言

歡迎提供意見, 謝謝 (註 : 留言經過版主審核通過才會發布)