冷面閻羅

          低調做人&&高調做事
          隨筆 - 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
          主站蜘蛛池模板: 兴山县| 禄丰县| 太原市| 钦州市| 镇赉县| 陵川县| 禹城市| 武乡县| 仙居县| 郑州市| 金寨县| 长岛县| 汤阴县| 瑞昌市| 芦溪县| 交口县| 宿州市| 唐山市| 集安市| 三河市| 麻栗坡县| 商水县| 乌拉特中旗| 沅江市| 杨浦区| 外汇| 年辖:市辖区| 深州市| 海丰县| 嫩江县| 五华县| 甘泉县| 汤原县| 南部县| 新河县| 漳平市| 黎平县| 拉萨市| 乌兰察布市| 宝清县| 锦州市|