史上最最佳軟體開發實踐指導

來源:互聯網
上載者:User

每過一段時間,我都能讀到一些好東西,它是如此的深刻見解,寫的如此的清晰,如此的條理,我必須把它收錄進我的個人“史上最佳”聖物集裡。最近,我新收錄了一篇,非常棒的一篇叫做《Best Practices for Scientific Computing》的文章,我希望每個來讀本文的讀者都找個時間讀讀它。我在這裡列出它的要點,是要鼓勵你去閱讀完整的全文。寫的真是非常好。

  1. 給人寫程式,而不是給電腦。
    1. 一個程式,對於閱讀它的人來說,不應該要求讀者一次性的在大腦裡載入過多的背景/相關知識。
    2. 命名需要一貫、明確、有意義
    3. 代碼風格和格式要統一一致
    4. 軟體開發中的各種工作都要分割成1小時左右的任務
  2. 重複性的工作自動化。
    1. 讓電腦去做重複性的工作
    2. 把最近使用過的命令存到一個檔案裡,以備複用
    3. 使用編譯工具來自動化系統流程
  3. 用電腦做記錄
    1. 用軟體工具來自動跟蹤電腦的工作
  4. 逐步改進。
    1. 每次做一小步,及時獲得反饋,及時糾正
  5. 使用版本控制。
    1. 使用一個版本控制系統
    2. 所有由手工建立的東西都要放到版本控制系統裡
  6. 不要重複自己(或他人)。
    1. 系統中的每一段資料都要有一個權威的單一的存在
    2. 代碼應該模組化複用,而不是考來粘去
    3. 複用代碼,而不是重寫代碼
  7. 準備好對付錯誤的方法
    1. 在程式中增加斷言,檢查它們的各種操作
    2. 使用現成的單元測試架構
    3. 測試程式時借鑒所有的可用的經驗
    4. 把bug做成測試案例
    5. 使用一個有代碼指令的調試工具
  8. 只在軟體能正確的工作後才可最佳化。
    1. 使用監控工具找到瓶頸
    2. 儘可能的用進階語言寫程式
  9. 文檔裡描述的應該是設計思路和目的,而不是技術細節。
    1. 描述介面和原因,而不是實現
    2. 重構代碼,而不是注釋解釋運行原理
    3. 引用其它程式時嵌入其它程式的文檔
  10. 協作
    1. 代碼合并前進行代碼審查
    2. 當幫帶新成員或解決特別詭異的問題時使用結對程式設計

我要額外提到的是這個:

11. 維新舊代碼。

如果你還在猶豫不決是否去看那篇文章,那你先去看看它裡面列出的引用67部關於電腦的著作和文章。正如我說的,這篇文章是“史上最佳”。

[英文原文:Best Best Practices Ever ][中文引用:http://www.aqee.net/best-best-practices-ever/ ]
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.