如何才能開發出一款好軟體?
在進行軟體開發時,不僅僅要選擇合適的開發方法,還要注意以下幾點關鍵問題,只有找對了關鍵,掌握住關鍵內容,才能開發出一款實用的軟體。
1.給人寫程式,而不是給計算機
①一個程式,對於閱讀它的人來說,不應該要求讀者一次性的在大腦里加載過多的背景/相關知識
②命名需要一貫、明確、有意義
③程式碼風格和格式要統一一致
④軟體開發中的各種工作都要分割成1小時左右的任務
2.重複性的工作自動化
①讓計算機去做重複性的工作
②把最近使用過的命令存到一個檔案裡,以備複用
③使用編譯工具來自動化系統流程
3.用計算機做歷史記錄
用軟體工具來自動跟蹤計算機的工作
4.逐步改進
每次做一小步,及時獲得反饋,及時糾正
5.使用版本控制
①使用一個版本控制系統
②所有由手工建立的東西都要放到版本控制系統裡
6.不要重複自己(或他人)
①系統中的每一段資料都要有一個權威的單一的存在
②程式碼應該模組化複用,而不是拷來粘去
③複用程式碼,而不是重寫程式碼
7.準備好對付錯誤的方法
①在程式中增加斷言,檢查它們的各種操作
②使用現成的單元測試框架
③測試程式時借鑑所有的可用的經驗
④把bug做成測試用例
⑤使用一個有程式碼指令的除錯工具
8.只在軟體能正確的工作後才可優化
①使用監控工具找到瓶頸
②儘可能的用高階語言寫程式
9.文件裡描述的應該是設計思路和目的,而不是技術細節
①描述介面和原因,而不是實現
②重構程式碼,而不是註釋解釋執行原理
③引用其它程式時嵌入其它程式的文件
10.協作
①程式碼合併前進行程式碼審查
②當帶新成員或解決特別詭異的問題時使用結對程式設計
11. 維護舊程式碼
軟體開發的關鍵過程是組合程式碼以達到想要的效果,但在組合新程式碼的同時,維護已有的舊程式碼同樣重要
以上幾個問題是軟體開發過程中的關鍵問題,值得軟體開發人員注意。軟體開發過程是一個牽一髮而動全身的過程,需要統籌協調,上下一致才能達到軟體效果。