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

            C小加

            厚德 博學(xué) 求真 至善 The bright moon and breeze
            posts - 145, comments - 195, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            實體:變量、類、函數(shù)、名稱空間、模板和庫。

            只給一個實體賦予一個定義良好的職責(zé)。隨著實體變大,其職責(zé)范圍自然也會擴大,但不應(yīng)該發(fā)散。

            如果一個實體有幾個不同的目的,則給使用帶來的難度往往會激增,因為這種實體除了會增加理解難度、復(fù)雜性和各部分中的錯誤外,還會導(dǎo)致其他問題。這種實體不僅更大,而且更難以使用和維護。此外,這種實體經(jīng)常會為自身的一些特定用途提供有問題的接口,因為各個功能領(lǐng)域之間的部分重疊,會影響干凈利落地實現(xiàn)每個功能所需的洞察力。

            具有多個不同職責(zé)的實體通常都是難于設(shè)計和實現(xiàn)的。“多個職責(zé)”經(jīng)常意味著“多重性格”----可能的行為和狀態(tài)的各種組合方式。應(yīng)該選擇目的單一的函數(shù),小而且目的單一的類,和邊界清晰的緊湊模塊。

            應(yīng)該用較小的底層抽象構(gòu)建更高層次的抽象。要避免將幾個底層抽象集合成一個較大的低層次抽象聚合體。用幾個簡單的行為來實現(xiàn)一個復(fù)雜的行為,比反其道而行之更加容易。

            在標準C語言中,realloc是一個臭名昭著的不良設(shè)計。這個函數(shù)承擔(dān)了太多的任務(wù):如果傳入的指針參數(shù)為NULL就分配內(nèi)存空間,如果傳入的大小參數(shù)為0就釋放內(nèi)存空間,如果可行則就地重新分配,如果不行則移到其他地方分配。這個函數(shù)不易于擴展,普遍認為它是一個目光短淺的失敗設(shè)計。

            在標準C++語言中,std::basic_string是另一個臭名昭著的不良設(shè)計----巨大的類的設(shè)計。在一個臃腫的類中添加了太多“多多益善”的功能,而這只是為了試圖成為容器但卻沒有做到,在用迭代還是索引上猶豫不決,還毫無道理地重復(fù)了許多標準算法,而為擴展所留的寬裕度又很小。

            国产亚洲精久久久久久无码| 亚洲国产精品无码久久98| 国产精品对白刺激久久久| 亚洲AV日韩精品久久久久 | 久久综合丝袜日本网| 国产成人综合久久精品尤物| 蜜臀久久99精品久久久久久| 午夜精品久久久久久毛片| 国产免费久久久久久无码| 亚洲AV日韩AV天堂久久| 精品视频久久久久| 亚洲AV无码久久精品蜜桃| 久久狠狠一本精品综合网| 欧美黑人又粗又大久久久| 性做久久久久久久久| 久久AV高清无码| 亚洲乱码精品久久久久..| 久久久久一级精品亚洲国产成人综合AV区 | 久久影院综合精品| 无码任你躁久久久久久| 国产69精品久久久久9999| 亚洲精品无码久久久久久| 欧美激情精品久久久久久| 久久综合丁香激情久久| 国产三级久久久精品麻豆三级| 性做久久久久久久久浪潮| 久久久精品人妻无码专区不卡| 国产亚洲色婷婷久久99精品| 亚洲AV乱码久久精品蜜桃| 久久精品国产2020| 亚洲中文字幕久久精品无码喷水| 国内精品久久久久久久久| 94久久国产乱子伦精品免费| 国内精品久久国产大陆| 狠狠色丁香婷婷久久综合不卡 | 久久免费线看线看| 99久久精品免费看国产一区二区三区| 久久精品国产99久久无毒不卡| 久久亚洲日韩精品一区二区三区| 久久精品国产乱子伦| 精品国产乱码久久久久久郑州公司 |