冷面閻羅

          低調做人&&高調做事
          隨筆 - 208, 文章 - 3, 評論 - 593, 引用 - 0
          數據加載中……

          [轉]程序設計中的感悟

          上午看了一個高手的blog,他上面寫到有關程序,我覺得寫的很不錯,貼上來,大家一起勉勵一下
          ??????1. 學習應該從基礎打起,不要一開始就嘗試最高深的技術。

            2. 每看一本書,不要說這章我以前學習過了,也掌握的很好,因此我可以跳過這一章看更重要的了。

            3. 對于作業,遇到不會的盡量不要立刻向別人請教。如果實在解決不了的問題,可以先完成你會的,然后把一些特別的難點提煉出來,向高手請教。不要指望書本和行家能幫你解決一切問題,因為并不是所有問題都能由別人教給你。

            4. 向別人請教問題應該把問題說明白。對于錯誤提示信息應該原樣提供出來,不要按自己理解的信息提供。因為既然你自己做不了,說明你理解一般都有問題。

            5. 問問題最好能帶代碼。

            6. 不要說“編譯通過,可是運行時...",因為編譯錯誤和運行錯誤可能根本沒有關系。一般來說,編譯是語法問題,而運行是邏輯問題。

            7. 書看千遍不如做程序一遍,應該盡量嘗試去寫程序。

            8. 做程序千個不如做好程序一個。應該盡量完善你現在做的程序,而不要不斷開新的計劃,而每個計劃都虎頭蛇尾。

            9. 要想到你不是一個人寫程序,而是和大家一起寫程序。

            10. 高深的技巧雖然顯示了高深的本領,但是對于合作往往是有害的,應該盡量寫出簡單易讀的代碼。

            11. 編制程序應該盡量做到自注釋,即代碼本身一讀就懂,好象自己在說明自己的邏輯一樣。

            12. 復雜的代碼如果實在做不到自注釋,應該給出適量的注釋。

            13. 注釋在修改代碼的時候應該相應修改,不能用陳舊的注釋去誤導別人。

            14. 代碼應該盡量可重用,相同功能的代碼應該由相同的函數完成,重要函數應該給出調試信息,以便調試時及早發現問題。

            15. 應該盡量寫小函數,每個函數盡量不要超過40行或者更少。這樣不用滾動屏幕也許就可以讀完整個函數。

           16. 對于switch語句,盡量不要有過多的分支,如果分支太多,可以考慮用跳轉表。

            17. 盡量少使用一些有爭議的語句,如goto和三目運算符,既然有爭議,它肯定有一定的缺點。

            18. 對于goto,許多工程師技術高到可以合理使用,而不至于導致問題。但是你的程序并不一定給你同水平的人看和修改,他們可不能保證合理的讀和修改這些相關代碼。

            19. 代碼編寫時應該有一定的格式,其基本要求是對理解代碼有一定幫助。

            20. 如果數據是多個模塊共有的,應該提供一個封裝的類來管理它,并提供一個合適的接口給各個模塊。這樣,如果數據內容有重大修改,則只要接口不變,基本上可以保證程序不要很復雜的修改。

            21. 應該盡量考慮到數據的并發控制。

            22. 數據的并發控制應該封裝在接口內,而不要暴露給其他模塊,這樣可以減少因為并發原因導致的程序死鎖。

            23. 數據本身結構不可以太復雜。應該盡量把不相關的數據分割成為兩組數據。

            24. 對于數據量比較大的情況,應該考慮數據庫。

            25. 數據庫接口應該采用標準ODBC或者ADO接口,盡量不要根據實際數據庫DBMS提供的接口來處理,因為你可能在實際使用中更換DBMS。

            26. 小的數據可以考慮文件,文件路徑應該必須設計成相對路徑。

            27. 在一個函數中,應該盡量打開文件后使用完后立刻關閉,這樣其他程序可能使用文件。

            28. 不要嘗試把文件全部讀到內存中,應該分次處理大文件。

            29. 編寫程序應該提供相關的測試程序,以提供測試手段。

            30. 應該考慮代碼、函數的使用情況,不要超越函數可以使用的范圍使用之。


          Trackback:http://blog.csdn.net/hotsummerghost/archive/2005/07/03/411231.aspx

          posted on 2006-11-16 09:45 冷面閻羅 閱讀(509) 評論(2)  編輯  收藏 所屬分類: 其他

          評論

          # re: [轉]程序設計中的感悟   回復  更多評論   

          不要在首頁轉載文章!!
          2006-11-16 11:14 | dudu

          # re: [轉]程序設計中的感悟   回復  更多評論   

          第一條,“學習應該從基礎打起,不要一開始就嘗試最高深的技術”
          其實,技術無所謂高深不高深,原理都是通的;“高深”的技術無非是能夠恰當地運用這些原理。
          要知其所以然,不要被表面所迷惑,我想作者要表達的是層道理。
          2006-11-16 13:42 | SeamanWang
          主站蜘蛛池模板: 辉县市| 晋州市| 含山县| 玉田县| 玉树县| 宁南县| 惠安县| 连平县| 怀来县| 上杭县| 广水市| 武功县| 体育| 清新县| 昂仁县| 西贡区| 栾城县| 太白县| 定安县| 罗定市| 日照市| 嘉兴市| 抚州市| 孙吴县| 辽阳市| 阿巴嘎旗| 鄂托克前旗| 天台县| 玉龙| 兴山县| 嘉义市| 岳阳县| 峨山| 山东省| 万山特区| 阳原县| 大同市| 定陶县| 桂平市| 洛隆县| 洛扎县|