• <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>

            白云哥

            身披半件長工衣,懷揣一顆地主心

             

            Framework Design Guidelines讀書筆記

            這本書雖然是講述.net框架設(shè)計的一些規(guī)范,不過仍然有一些通用的設(shè)計準(zhǔn)則可以參考

             

            命名規(guī)范:

            這些只有在用于公開暴露給外界的API時才是必需的

             

            標(biāo)識符大小寫規(guī)則:

            1.要把PascalCasing用于由多個單詞構(gòu)成的名字空間,類型以及成員的名字

            2.要把camelCasing用于參數(shù)的名字

            3.不要把閉合形式的復(fù)合詞中每個單詞的首字母大寫,比如 callback, endpoint 等等,可以查閱英語詞典來確定復(fù)合詞是不是閉合的

            4.不要使用匈牙利命名法。原因有幾點,一是發(fā)明它的ms公司都已經(jīng)明確要求在新的庫在不要使用這種命名法,二是變量名前加類型標(biāo)識符是個很不好的習(xí)慣,在開發(fā)過程中有可能會隨時修改這些變量的類型定義,三是新的編輯器中不需要用m_前綴來確定其類型,不過對于內(nèi)部實現(xiàn)的變量來說,用一個前綴也許會讓變量的查找更方便,比如用一個_前綴

            5.不要使用未被廣泛接受的首字母縮寫詞,如何確定某個縮寫詞是否眾所周知有個好方法,到google上搜索一下,如果前幾條都是你所期望的內(nèi)容,那么它就是眾所周知的了

             

            關(guān)于命名:

            1.要用名詞或名詞短語來給類和結(jié)構(gòu)體命名,使用PascalCasing的大小寫風(fēng)格,類名字不要加 C,但是接口前需要加 I,這是個特例

            2.用形容詞短語來給接口命名,在少數(shù)情況下也可以使用名詞或名詞短語

            3.考慮在派生類的末尾使用基類的名字,比如 class FileStream : public Stream

            4.用動詞或動詞短語來命名方法,比如 int CompareTo();

            5.要用肯定性的短語(CanSeek而不是CantSeek)來命名布爾屬性,可以加Is,Can,Has等前綴,要確保使用時的測試語句讀起來通順,比如

            if (collection.Contains(item)) 就比 if (collection.IsContained(item)) 要通順得多

            此外,要優(yōu)先選擇主動語態(tài)而不是被動語態(tài),比如

            if (stream.CanSeek()) 就比 if (steam.IsSeekable()) 要強得多

            6.要用現(xiàn)在時和過去時來賦予事件名以之前和之后的概念,不要用Before或After這樣的前后綴,比如 Closing, Closed而不是AfterClose

             

            使用規(guī)范:

            1.優(yōu)先使用集合,避免使用數(shù)組

            2.考慮使用不規(guī)則數(shù)組,而不要使用多維數(shù)組,也就是優(yōu)先使用int [][] jagedArray這樣的數(shù)組,避免使用 int [,] multiDimArray這樣的類型

            3.要用最泛的類型來作為參數(shù)類型,大多數(shù)以集合為參數(shù)的成員都使用IEnumerable<T> 接口

            posted on 2010-08-07 00:19 白云哥 閱讀(361) 評論(0)  編輯 收藏 引用 所屬分類: Others

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿(4)

            隨筆分類

            隨筆檔案

            相冊

            我的鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久精品一区二区三区中文字幕| 欧美熟妇另类久久久久久不卡| 久久香蕉综合色一综合色88| 久久九九青青国产精品| 精品久久综合1区2区3区激情| 日韩久久久久中文字幕人妻 | 天天爽天天狠久久久综合麻豆| 国产精品久久久久无码av| 久久精品国产一区二区| 亚洲AV无码久久精品成人| 99久久精品免费看国产免费| 亚洲乱码精品久久久久.. | 26uuu久久五月天| 国产精品99久久久精品无码| 免费国产99久久久香蕉| 久久久噜噜噜www成人网| 久久人人爽人人爽AV片| 久久国产亚洲精品无码| 久久这里只精品99re66| 久久久久久久久久免免费精品 | 99久久精品费精品国产一区二区| 国产精品久久婷婷六月丁香| 国产精品伊人久久伊人电影| 2022年国产精品久久久久| 中文字幕无码免费久久| 久久人人爽人人爽人人片AV不 | 精品伊人久久大线蕉色首页| 国产99久久久国产精免费| 午夜欧美精品久久久久久久| 亚洲国产精品无码久久久不卡| 久久久久久A亚洲欧洲AV冫 | 一本久久精品一区二区| 久久精品国产WWW456C0M| 91精品国产91久久久久久蜜臀| 久久99精品久久久久久 | 伊人久久大香线蕉AV一区二区| 久久久噜噜噜久久中文字幕色伊伊| 丰满少妇人妻久久久久久4| 久久免费视频6| 免费无码国产欧美久久18| 伊人久久大香线焦AV综合影院|