提高程序員項目設計水平的11條建議

jopen 10年前發布 | 15K 次閱讀 程序員

  英文原文:How to Improve your Skills as a Programmer (本文有修改)

  本文整理了國外百科網站的專家對程序員提高項目開發設計水平的一些建議,對于提高軟件項目設計的質量,縮短開發周期由很好的指導作用。

  1. 分析清楚你要面對的項目。

  這是進行所有工作的第一步,如果你在這個地方都犯錯了,那么后續所做的一切努力都是白費。比如,你要完成圖書管理系統,那么你就應該明白這個系統主要是用于解決圖書管理的問題。

  2. 考慮項目設計的方法。

  在這個階段,你要根據這個項目的特點考慮設計的工具和語言。比如,對于圖書管理系統,它需要封裝性好,這樣有利于管理和維護。而這個系統開發周期較短,功能較簡單。所以,根據其特點,選擇 Java 作為開發語言會是一個不錯的選擇。

  3. 收集完整的需求。

  花時間整理清楚你的用戶群的基本需求有哪些,而你的產品最終功能有哪些。清晰的思維能夠為你節省大量的時間。

  4. 編寫全面的實施計劃(或模型)。

  1. 對于小型獨立的項目,這可能只是一個基本的流程圖或一個簡單的函數模型。
  2. 對于較大的項目,它有助于將工作分解成模塊,并作如下考慮:
  3. 每個模塊的功能是什么
  4. 模塊之間的數據如何傳遞
  5. 每個模塊如何調用這些數據
  6. </ol>

      雖然收集需求和編寫計劃比起寫代碼來得枯燥,甚至樂趣性比起花費幾小時進行 Bug 調試還不如。但是,花時間對程序的正確流程和結構進行預先計劃卻能確保后續的程序設計的高效率。

      5. 為代碼添加注釋。

      在你認為需要為代碼進行解釋說明的地方添加注釋。最常見的注釋會出現在函數說明,變量聲明和返回值上,它告訴人們這個東西有什么用處以及為什么會這么做。

      6. 采用統一的命名規則來為變量命名。

      它將幫助你跟蹤每種類型的變量,并弄清楚每種變量的代表的是什么。比起簡單的 x = a + b * c,使用命名規則的命名的變量能夠使代碼更加易于維護和調試。最常見的命名規則為匈牙利命名法,變量名的前綴包含了它的函數型。比如,為整數變量命名的 intRowCounter,以及為字符串型命名的 strUserName。不管你采用的命名規則是什么,你必須確保命名規則的一致性,并且該規則能夠對你的變量具有簡單描述性。

      7. 對代碼進行組織化編輯。

      使用可視化的結構來表現代碼結構。比如,在條件語句(if,else)或者循環語句(for,while)的代碼塊進行代碼縮進。再比如,在變量和操作符中間加入空格。這樣做能夠使代碼更直觀優雅,程序流程一目了然。

      8. 進行全面的測試。

      首先,在每個模塊中測試常見的數據值,看是否和預期結果一樣;再然后測試那些非常規的數據類型,用于排除隱藏的錯誤。測試是一門藝術,你能夠在實踐中豐富自己的技巧和見地。編寫的測試用例通常會包含以下幾種情形:

    1. 極端值:包含極小值和超出預期的極大值,空字符串的文本值,每個參數都為空的情形等。
    2. 無意義的值:假定用戶會輸入一些與輸出要求無關的東西,看程序會對此有何反應。
    3. 不正確的值:比如把零作為除數,把負數作為平方根,或者是在輸入字符串的時候輸入了一個數字。
    4. </ol>

        9. 實踐,實踐,再實踐。

        編程的工作是與時俱進的,你能夠在實踐中學到很多新的知識,同時以前學過的舊知識也能夠被重新溫習。

        10. 減小需求改變的風險。

        在現實的工作環境中,需求的變化一直是一個令人頭痛但又不得不去面對的問題。但是,假如你能夠在項目開始階段將需求和項目計劃越發清楚地表現出 來,那么在后續因為溝通的誤解或理解力不夠而導致設計的結果與需求產生偏差的問題就會得到有效的改善。 所以,在項目設計的階段,請在編寫代碼之前清楚的展示你的需求文檔和工作說明:系統需要什么東西,你正打算做什么,工作開展到了什么地步。

        11. 學會由簡入繁。

        假如你需要編程的東西很復雜,這樣做能夠幫助你更加順利地開展工作。例如,有這樣一個項目,窗口上有一個任意形狀的圖形,需要設計一個程序能夠根據按住鼠標滑動的方向和速度而改變它的形狀。

      1. 首先,你可以設計完成一個正方形在按住鼠標滑動而產生形變的情形。換句話說,這一步主要是解決鼠標運動跟蹤的問題。
      2. 接著,將這個正方形的大小與鼠標的速度相關聯起來。換句話說,這一步是解決鼠標速度與自身的形狀的關聯問題。
      3. 最后,創建你想要的實際形狀,并把這三個組件連接在一起。
      4. </ol>

          這種方法有助于模塊化項目的代碼編寫,其中每個組件都有它自己的獨立的塊。這對代碼重用是非常有用的(例如你想使用鼠標跟蹤新項目)并使得程序更容易調試和維護。

         
        來自: www.evget.com
                            <span id="shareA4" class="fl">                            
                                </span></div>
         本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
         轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
         本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!