在軟體產業工作超過十年之後,我總結出了二十條原則,跟大家分享如下:
謙虛——世界上沒有無所不知的工程師,你也一樣。
先讓它能跑,再讓它正確——可能的話,再讓它更快。
修改時再優化——寧可出現重複,也不要出現錯誤的抽象化設計。
始終寫測試——如果您不寫測試,那麼您就是在手動測試。
解決 80% 的使用情境就好——你永遠無法解決所有人的問題。
盡量用函數式編程——比較容易理解。如果您的程式碼需要博士學位才能看懂,那你的方法有點問題。
刪除越多程式碼越好
足夠好勝於完美——不要僅僅因為它不完美,就放棄有意義的改進。
私下批評,公開表揚
做筆記——如果你認為你會記住它,那你就是在自欺欺人。
與您的用戶溝通——最好的軟體是由對用戶有同理心的工程師開發的。
有意識地學習——練習時要牢記一個明確而具體的目標 - 你想要改進什麼以及如何改進(刻意練習)。
不要過早概括——等到你有至少 3 段重複的程式碼,再進行抽象化(又名:三規則)。
修復破損的窗戶——代碼中的一段技術債會導致另一段技術債。您的程式碼很快將變得難以管理。
解決問題——不管是誰的錯,都是你要負責解決。
做有用的事,而不是時髦的事——先和一個小團隊一起嘗試。如果可行,請擴大實施。如果不行,則中止。
良好的休息才有最佳成果——定期休息對於獲得最佳表現至關重要。你也不會認為專業短跑運動員一直在短跑吧。
採取小步驟——大的重寫是行不通的。您將在過程中失去動力和注意力。試著每天發布更新。它使您可以在必要時,自由地調整重點。
表揚出色的工作——我們在動物身上觀察到的這件事,同時也適用於人類。當你表揚人們的好表現而不是懲罰他們的壞表現時,你會得到更好的結果。
完美的代碼不存在——最好接受這事實,而不是浪費時間、追逐不可能的事情。