卓越的控制系統編程人員在設計上花費的時間更多,這樣他們在實施階段就可以節省時間了。盡管這看起來是在鼓勵你要足夠懶惰才能成為優秀的控制系統程序員,實際上你要足夠聰明和高效,并且對于編程時間和預算有相當的把握。 僅有良好的編程習慣并不足以造就一名優秀的控制系統程序員。在開發穩定、可靠、高效和精致的控制系統的時候,需要多種技巧。如果你想成為一名偉大的控制系統程序員,看清自己的長處和短處都至關重要。控制系統程序員最常見的一個弱點,就是系統設計能力。很多控制系統程序員都是自學成才,沒有經過多少正規的軟件工程訓練。即便是那些擁有計算機科學學位的人也是如此,因為他們更加關注軟件編碼細節,而不是系統設計和架構。然而,只有擁有良好的設計習慣,才能保證開發出來的系統穩定、可靠并且高效。 減少總體時間 最好的設計習慣,就是要“懶一點”。這么說的意思是盡量通過在設計階段花費更多時間、減少實施階段的時間,減少代碼數量,從而降低編寫、測試、建檔、改錯和安裝的工作量。最好把時間花在只有1000行代碼有效設計開發上面,這要好過使用10000行代碼、沒有經過仔細思考的繁雜設計。 想要成功“偷懶”,就需要從不停止閱讀和學習新的架構和新的方法。軟件開發并不是在定義完備而且穩定的環境下進行的,它通常都會不斷演進。五年之前不可想象的架構,現在卻已經成為了主流解決方案。最好的學習新設計模式和簡單方法解決問題的途徑,就是養成閱讀專業雜志和博客的習慣。每天花至少30分鐘閱讀其他人設計解決方案的心得。 有一些非常特別的設計系統值得學習,首先是要設計界面,然后是算法。通過先行設計界面,你會從代碼用戶的角度接觸到問題。你應該設計一個易于使用、不需要了解關于實施算法知識的界面。如果理解你界面的時候需要考慮的空間最小,也就容易進行改錯和建檔。 養成重用設計的習慣,這是“懶惰”的終極奧義。不要害怕從之前的項目里剪切和粘貼設計元素。建立并且使用可重用設計資料庫,并將資料庫與設計伙伴分享。造成無法重用的一個糟糕設計習慣就是過度泛化。你可以針對重用進行設計,但是如果你在某一個設計元素的一般化方向上走的太遠,就會有風險使得界面過于復雜。在進行設計的時候,要考慮設計重用的可能性,但是不用試圖使用超過50%到75%的重用元素。 正確建檔加速驗證 養成進行規范顯示設計的習慣。使用UML(統一化建模語言),對設計建檔,這樣它們就易于理解和驗證。UML在軟件工程中的地位就和電路圖在電氣工程中的地位一樣。沒有哪個電氣工程師在不借助電路圖的情況下就會匆忙開始進行布線,同樣也不應該有軟件工程師在沒有UML定義的情況就開始編碼。 你所養成的良好設計習慣,會減少你需要編寫的代碼量,讓你成為一名更好的控制系統程序員。仔細地考慮設計中的重用元素,正規建檔,是最先進架構和模型的根本,這樣控制系統才會更加穩定、可靠并且容易維護。 |