• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            技術(shù),瞎侃,健康,休閑……

            mahu@cppblog 人類的全部才能無(wú)非是時(shí)間和耐心的混合物
            posts - 11, comments - 13, trackbacks - 0, articles - 12
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            zz如何閱讀別人代碼 1

            Posted on 2006-06-26 22:46 mahudu@cppblog 閱讀(229) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Programming
            code?reading

            ++++++++++++

            第一章:?導(dǎo)論

            ++++++++++++


            1.要養(yǎng)成一個(gè)習(xí)慣,?經(jīng)?;〞r(shí)間閱讀別人編寫的高品質(zhì)代碼.

            2.要有選擇地閱讀代碼,?同時(shí),?還要有自己的目標(biāo).?您是想學(xué)習(xí)新的模式|編碼風(fēng)格|還
            是滿足某些需求的方法.

            3.要注意并重視代碼中特殊的非功能性需求,?這些需求也許會(huì)導(dǎo)致特殊的實(shí)現(xiàn)風(fēng)格.

            4.在現(xiàn)有的代碼上工作時(shí),?請(qǐng)與作者和維護(hù)人員進(jìn)行必要的協(xié)調(diào),?以避免重復(fù)勞動(dòng)或產(chǎn)
            生厭惡情緒.

            5.請(qǐng)將從開(kāi)放源碼軟件中得到的益處看作是一項(xiàng)貸款,?盡可能地尋找各種方式來(lái)回報(bào)開(kāi)
            放源碼社團(tuán).

            6.多數(shù)情況下,?如果您想要了解"別人會(huì)如何完成這個(gè)功能呢?",?除了閱讀代碼以外,?沒(méi)
            有更好的方法.

            7.在尋找bug時(shí),?請(qǐng)從問(wèn)題的表現(xiàn)形式到問(wèn)題的根源來(lái)分析代碼.?不要沿著不相關(guān)的路徑
            (誤入歧途).

            8.我們要充分利用調(diào)試器|編譯器給出的警告或輸出的符號(hào)代碼|系統(tǒng)調(diào)用跟蹤器|數(shù)據(jù)庫(kù)
            結(jié)構(gòu)化查詢語(yǔ)言的日志機(jī)制|包轉(zhuǎn)儲(chǔ)工具和Windows的消

            息偵查程序,?定出的bug的位置.

            9.對(duì)于那些大型且組織良好的系統(tǒng),?您只需要最低限度地了解它的全部功能,?就能夠?qū)?br />它做出修改.

            10.當(dāng)向系統(tǒng)中增加新功能時(shí),?首先的任務(wù)就是找到實(shí)現(xiàn)類似特性的代碼,?將它作為待實(shí)
            現(xiàn)功能的模板.

            11.從特性的功能描述到代碼的實(shí)現(xiàn),?可以按照字符串消息,?或使用關(guān)鍵詞來(lái)搜索代碼.


            12.在移植代碼或修改接口時(shí),?您可以通過(guò)編譯器直接定位出問(wèn)題涉及的范圍,?從而減少
            代碼閱讀的工作量.

            13.進(jìn)行重構(gòu)時(shí),?您從一個(gè)能夠正常工作的系統(tǒng)開(kāi)始做起,?希望確保結(jié)束時(shí)系統(tǒng)能夠正常
            工作.?一套恰當(dāng)?shù)臏y(cè)試用例(test?case)可以幫助您滿

            足此項(xiàng)約束.

            14.閱讀代碼尋找重構(gòu)機(jī)會(huì)時(shí),?先從系統(tǒng)的構(gòu)架開(kāi)始,?然后逐步細(xì)化,?能夠獲得最大的效
            益.

            15.代碼的可重用性是一個(gè)很誘人,?但難以理解與分離,?可以試著尋找粒度更大一些的包
            ,?甚至其他代碼.

            16.在復(fù)查軟件系統(tǒng)時(shí),?要注意,?系統(tǒng)是由很多部分組成的,?不僅僅只是執(zhí)行語(yǔ)句.?還要
            注意分析以下內(nèi)容:?文件和目錄結(jié)構(gòu)|生成和配置過(guò)程|

            用戶界面和系統(tǒng)的文檔.

            18.可以將軟件復(fù)查作為一個(gè)學(xué)習(xí)|講授|援之以手和接受幫助的機(jī)會(huì).
            亚洲精品WWW久久久久久| 青青草原综合久久大伊人| 91精品国产9l久久久久| 国产午夜电影久久| 日本WV一本一道久久香蕉| 精品乱码久久久久久久| 久久久久久久亚洲精品| 亚洲色欲久久久综合网东京热| 久久国产精品77777| 久久久久久久久久久免费精品| 综合人妻久久一区二区精品| 久久99精品国产麻豆蜜芽| 久久亚洲精品中文字幕| 波多野结衣久久一区二区| 91久久成人免费| 国产精品久久久天天影视| 色婷婷久久综合中文久久蜜桃av| 久久99精品国产99久久6| 国产99精品久久| 日本久久久久亚洲中字幕| 久久综合九色综合欧美就去吻| 国产午夜久久影院| 久久精品aⅴ无码中文字字幕不卡| 日韩欧美亚洲综合久久影院Ds | 久久av免费天堂小草播放| 麻豆成人久久精品二区三区免费| 亚洲七七久久精品中文国产| 久久精品国产一区二区三区不卡| 久久99久久99小草精品免视看| 久久久久久久人妻无码中文字幕爆| 久久强奷乱码老熟女网站| 性做久久久久久免费观看| 亚洲精品NV久久久久久久久久 | 91久久婷婷国产综合精品青草| 色欲av伊人久久大香线蕉影院| 亚洲国产成人久久精品影视| 成人综合伊人五月婷久久| 欧洲精品久久久av无码电影 | 粉嫩小泬无遮挡久久久久久| 久久狠狠高潮亚洲精品| 久久国产精品国产自线拍免费|