這 40 個小貼士,或許可以幫你提升編程技能。

如何提高編程技能?恐怕很多開發者思考過這個問題。最近,擁有將近 15 年開發經驗的軟件工程師 Kesk -*- 寫了一篇博客,列舉了 40 條對其職業生涯有所幫助的事項。

或許,通過以下 40 個小貼士,你可以提升自己的編程技能。

1. 將大塊代碼拆分成函數。

2. 下班的時候還有問題沒解決,請關上電腦,明天再看。

3. YAGNI 原則(你不會需要它):只寫別人要求你寫的功能。不要預測未來,只需要儘可能快地完成開發。只編碼解決當前問題最必要的部分。

4. 你不需要什麼都懂,也不需要了解所有框架。最棒的事情莫過於打好基礎。在開始使用一個框架前先深入瞭解這門語言,學習基礎的事項(如 SOLID 原則),或者如何寫出乾淨的代碼。

5. KISS 原則:KISS(保持簡單和愚蠢)原則表明,大多數系統保持簡潔而非複雜化,就可以運行得很好。儘管這很符合邏輯,但有時候卻很難做到。

6. 不要想太多。

7. 如果你和一個問題或 bug 鬥爭了太長時間,先離開一會兒,等下再回來。通常,在離開辦公室去往衛生間的路上,解決方案就會出現在腦海裏。當你對客戶或同事生氣時,也建議你暫時離開去走走,如果你還想保住工作的話……

8. 學習寫有用的測試,學着用 TDD(測試驅動開發)。TDD 是一種軟件開發流程,它是對如下簡短開發週期的重複:寫測試;運行所有測試,查看新的測試是否運行;寫代碼;運行測試;重構代碼;重複。

9. 先解決問題再寫代碼。不要在一籌莫展的時候開始編程。

10. 不要記代碼,而是理解邏輯。

11. 如果你複製粘貼 Stack Overflow 中的解決方案,請確保自己首先理解它。學習用恰當的方式使用 Stack Overflow。

12. 想學習,先實踐。創建示例,並使其運行,因爲只通過閱讀來學習遠遠不夠。

13. 研究他人的代碼,也時不時讓別人研究你的代碼。結對編程並進行代碼 review 是不錯的想法。

14. 不要重複造輪子。

15. 代碼是最好的文檔。

16. 瞭解如何搜索。你需要有經驗,大量閱讀,瞭解需要找什麼。

17. 你寫的代碼以後會由自己或別人進行維護,因此寫的時候想着讀者,不要把自己當做最聰明的人。寫代碼要像寫故事一樣。

18. 用谷歌解決錯誤的最佳方式是複製粘貼。

19. 不要放棄,問題總能得到解決的。糟糕的時刻總會過去。

20. 好好休息。解決問題的最佳方式是先讓大腦得到充分休息。

21. 學習使用軟件設計模式。設計模式是軟件設計常見問題的解決方案。每個模式就像一個藍圖,你可以依據它進行自定義,進而解決自己代碼中的常見設計問題(記住,不要重複造輪子)。

22. 儘可能地使用集成工具和自動化方式。

23. 練習編碼套路(code kata):編碼套路是一種編程練習,可以幫助程序員通過重複實踐來提升技能。示例參見:http://codingdojo.org/kata/

24. 編程並達到接口水平,而不是實現水準。依賴注入是必要的,參見 SOLID 原則。

25. 重構——測試 - 重構。重構即對現有代碼進行重建、改動,在不改變其內部行爲的前提下提升內部結構。

26. 必要的時候尋求幫助,不要浪費時間。

27. 多實踐,熟能生巧。

28. 儘管有時候註釋可以幫到你,但不要在這上面花費太多注意力。註釋可能是過時的。

29. 瞭解自己的開發環境,並建設足夠強大的開發環境,如 IntelliJ。

30. 重用組件。

31. 在開發 web 應用時,思考移動端及其相關的電量和帶寬限制。

32. 不要過早地優化或重構代碼。儘快做出最小可行性產品比較重要。

33. 不要爲了節約幾分鐘,而選擇低效的捷徑。每次寫代碼,都要竭盡全力。

34. 遵循文檔標準。

35. 用戶不是技術人才。開發 UI 時時刻想着這一點。

36. 經常使用 GitHub 或 bitbucket 等源代碼控制系統,並頻繁進行小的提交更新操作。

37. 使用 log 要比代碼 debug 更好。將所有關鍵部分記錄下來。

38. 寫代碼時要保持連貫性。如果你使用一種風格,請一以貫之。如果你和多人合作的話,請和整個團隊使用同樣的風格。

39. 不要停止學習,不止是學新語言或新框架,還要關注軟件開發基礎知識。

40. 最後,保持耐心,保持熱愛。

相關文章