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

            一秋草木

            Nothing Is Impossiable!
            posts - 11, comments - 10, trackbacks - 0, articles - 2
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
             

            使用面向對象的程序設計方法的主要目的是實現數據的封裝。將一組操作作用于特定的數據對象之上。這些數據對象具有很強的相關性,是屬于某一客觀世界的一類物質的特征屬性,這就是類的屬性。這些屬性上的操作就是類的行為。 

            根據上面的分析,對于需要實現強類聚,低耦合的程序而言,其最終目的與類封裝的目的基本一致。在考慮如何實現時,可以借用OOP的方法。

             

            具體歸納如下:

            1、實現數據的封裝

            使用struct將一組行為的共用對象打包。

             

            2、將模塊獨立化為文件

            ①       形式上

            需要供外部使用的API接口放在.h中,模塊內部函數放在.c文件中。

            ②       實現上

            文件中的函數的操作對象只能是這個struct中的成員。不要讓文件外的全局變量來決定模塊行為的執行路徑。這樣的目的在于模塊的行為只能由模塊自身的狀態決定。

             

            3、對象(模塊)的狀態控制

            模塊的狀態也應該使用專門的操作函數進行封裝。

            目的是防止全局變量濫用,使修改狀態的行為容易被監視與控制。

            實際編程中,使用全局變量方式的狀態控制場合,狀態的變更經常被遺漏。強制使用函數對狀態的進入與退出進行標識,防止遺忘。

             

            4、行為控制

            將執行的某一行為的判斷條件進行封裝。 

            在復雜系統中,一個行為的執行并不是能夠由單一的Event就能觸發。而是需要諸多狀態條件的成立。這種情況下,需要把行為的執行決策提煉為決策函數簇,集中管理。

            各個狀態作為輸入,控制函數是響應函數,輸出的是響應行為。 

            簡而言之就是讓諸葛亮這個專家去判斷【天時】、【地利】、【人和】這些條件是不是都具備了,是不是可以操家伙了。如果還沒有,那個孔明兄就要決策是不是裝神弄鬼一下,借點東風或是發揮自身才能造出木牛流馬來幫幫忙。

             

            好處:

            ①       減少代碼冗余。

            需要添加變更的場合,只需要更改這一個決策類即可。

            ②       集中優勢兵力殲滅敵人的有生力量。

             

            總結:

            上面的方法的根本目的在于:限制行為,將其固定在一組數據的集合上。減少耦合性。

            上面的方法只是從程序結構上控制實現方式,避免出錯的可能。不可能解決所有問題。但主要的解決方向是,采用OOP的思想,限制行為,避免全局變量滿天飛。

            国产精品免费久久| 国产精品成人99久久久久91gav| 久久夜色精品国产亚洲av| 久久久久综合中文字幕| 久久亚洲国产成人影院| 国产成人久久激情91| 亚洲伊人久久成综合人影院| 国产偷久久久精品专区| 久久99精品免费一区二区| 国产婷婷成人久久Av免费高清 | 一本色综合网久久| 91精品国产综合久久四虎久久无码一级| 久久嫩草影院免费看夜色| 精品久久777| 中文字幕无码免费久久| 精品无码久久久久久久久久 | 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久精品国产久精国产果冻传媒| 久久伊人精品青青草原高清| 久久久亚洲AV波多野结衣| 国产69精品久久久久99| 久久亚洲国产欧洲精品一| 亚洲精品国精品久久99热一| 久久综合亚洲色HEZYO社区| 色婷婷综合久久久久中文字幕| 久久99热狠狠色精品一区| 久久夜色精品国产噜噜噜亚洲AV| 噜噜噜色噜噜噜久久| 欧美与黑人午夜性猛交久久久| 香蕉久久夜色精品国产小说| 狠狠干狠狠久久| 久久综合九色综合欧美狠狠| 久久精品国产91久久综合麻豆自制| 一本色道久久88精品综合| 亚洲欧美日韩中文久久| 亚洲级αV无码毛片久久精品| 国产99久久久国产精品小说| 97久久婷婷五月综合色d啪蜜芽| 中文字幕无码久久人妻| 99久久香蕉国产线看观香| 亚洲级αV无码毛片久久精品|