国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

中國三農(nóng)建設(shè)工作委員會官方網(wǎng)站深圳網(wǎng)絡(luò)推廣最新招聘

中國三農(nóng)建設(shè)工作委員會官方網(wǎng)站,深圳網(wǎng)絡(luò)推廣最新招聘,天津市住房和城鄉(xiāng)建設(shè)局網(wǎng)站,一個專門做日本漫畫的網(wǎng)站文章目錄一、迪米特法則定義二、迪米特法則分析三、迪米特法則實例一、迪米特法則定義 迪米特法則(Law of Demeter, LoD):一個軟件實體應(yīng)當盡可能少地與其他實體發(fā)生相互作用。 二、迪米特法則分析 如果一個系統(tǒng)符合迪米特法則,那么當其中某一個模塊發(fā)…

文章目錄

  • 一、迪米特法則定義
  • 二、迪米特法則分析
  • 三、迪米特法則實例


一、迪米特法則定義

迪米特法則(Law of Demeter, LoD):一個軟件實體應(yīng)當盡可能少地與其他實體發(fā)生相互作用。

二、迪米特法則分析

如果一個系統(tǒng)符合迪米特法則,那么當其中某一個模塊發(fā)生修改時,就會盡量少地影響其他模塊,擴展會相對容易,這是對軟件實體之間通信的限制,迪米特法則要求限制軟件實體之間通信的寬度和深度。迪米特法則可降低系統(tǒng)的耦合度,使類與類之間保持松散的耦合關(guān)系。

迪米特法則還有幾種定義形式,包括:不要和“陌生人”說話、只與你的直接朋友通信等,在迪米特法則中,對于一個對象,其朋友包括以下幾類:

  • 當前對象本身(this);

  • 以參數(shù)形式傳入到當前對象方法中的對象;

  • 當前對象的成員對象;

  • 如果當前對象的成員對象是一個集合,那么集合中的元素也都是朋友;

  • 當前對象所創(chuàng)建的對象。

任何一個對象,如果滿足上面的條件之一,就是當前對象的“朋友”,否則就是“陌生人”。在應(yīng)用迪米特法則時,一個對象只能與直接朋友發(fā)生交互,不要與“陌生人”發(fā)生直接交互,這樣做可以降低系統(tǒng)的耦合度,一個對象的改變不會給太多其他對象帶來影響。

迪米特法則要求我們在設(shè)計系統(tǒng)時,應(yīng)該盡量減少對象之間的交互,如果兩個對象之間不必彼此直接通信,那么這兩個對象就不應(yīng)當發(fā)生任何直接的相互作用,如果其中的一個對象需要調(diào)用另一個對象的某一個方法的話,可以通過第三者轉(zhuǎn)發(fā)這個調(diào)用。簡言之,就是通過引入一個合理的第三者來降低現(xiàn)有對象之間的耦合度。

在將迪米特法則運用到系統(tǒng)設(shè)計中時,要注意下面的幾點:

  • 在類的劃分上,應(yīng)當盡量創(chuàng)建松耦合的類,類之間的耦合度越低,就越有利于復(fù)用,一個處在松耦合中的類一旦被修改,不會對關(guān)聯(lián)的類造成太大波及;
  • 在類的結(jié)構(gòu)設(shè)計上,每一個類都應(yīng)當盡量降低其成員變量和成員函數(shù)的訪問權(quán)限;
  • 在類的設(shè)計上,只要有可能,一個類型應(yīng)當設(shè)計成不變類;
  • 在對其他類的引用上,一個對象對其他對象的引用應(yīng)當降到最低。

三、迪米特法則實例

某公司所開發(fā)CRM系統(tǒng)包含很多業(yè)務(wù)操作窗口,在這些窗口中,某些界面控件之間存在復(fù)雜的交互關(guān)系,一個控件事件的觸發(fā)將導(dǎo)致多個其他界面控件產(chǎn)生響應(yīng),例如,當一個按鈕(Button)被單擊時,對應(yīng)的列表框(List)、組合框(ComboBox)、文本框(TextBox)、文本標簽(Label)等都將發(fā)生改變,在初始設(shè)計方案中,界面控件之間的交互關(guān)系可簡化為如圖所示結(jié)構(gòu):
在這里插入圖片描述
由于界面控件之間的交互關(guān)系復(fù)雜,導(dǎo)致在該窗口中增加新的界面控件時需要修改與之交互的其他控件的源代碼,系統(tǒng)擴展性較差,也不便于增加和刪除新控件。

現(xiàn)使用迪米特對其進行重構(gòu)。

在本實例中,可以通過引入一個專門用于控制界面控件交互的中間類(Mediator)來降低界面控件之間的耦合度。引入中間類之后,界面控件之間不再發(fā)生直接引用,而是將請求先轉(zhuǎn)發(fā)給中間類,再由中間類來完成對其他控件的調(diào)用。當需要增加或刪除新的控件時,只需修改中間類即可,無須修改新增控件或已有控件的源代碼,重構(gòu)后結(jié)構(gòu)如圖所示:
在這里插入圖片描述

http://aloenet.com.cn/news/46335.html

相關(guān)文章:

  • 云服務(wù)器可以做網(wǎng)站嗎網(wǎng)絡(luò)營銷的一般流程
  • 知名企業(yè)網(wǎng)站建設(shè)哈爾濱網(wǎng)站制作軟件
  • 做鋼材的網(wǎng)站有哪些網(wǎng)站的網(wǎng)站建設(shè)
  • 個人網(wǎng)站畢業(yè)設(shè)計搜索關(guān)鍵詞然后排名怎樣提升
  • 國外兒童社區(qū)網(wǎng)站模板外鏈信息
  • 做微網(wǎng)站迅宇科技網(wǎng)店推廣是什么
  • 做網(wǎng)站的不給做robots文件百度推廣登錄后臺
  • 在百度上做網(wǎng)站多少錢百度收錄提交
  • 杭州旅游 網(wǎng)站建設(shè)必應(yīng)搜索引擎地址
  • 一個網(wǎng)站可以做多少個小程序營銷推廣方案
  • 做301跳轉(zhuǎn)會影響之前網(wǎng)站排名嗎上海谷歌推廣
  • 在國外網(wǎng)站做中國旅游推廣百度關(guān)鍵詞熱度排名
  • 什么專業(yè)可以做網(wǎng)站百度店鋪免費入駐
  • 學(xué)校定制網(wǎng)站建設(shè)公司深圳優(yōu)化公司高粱seo較
  • 網(wǎng)站建設(shè)注冊密碼咋弄百度一下百度百科
  • 做網(wǎng)頁靠哪個網(wǎng)站賺錢湖南競價優(yōu)化哪家好
  • 服務(wù)器租用網(wǎng)站搜索關(guān)鍵詞排名優(yōu)化軟件
  • 網(wǎng)站 申請百度在線客服中心
  • 邗江區(qū)城鄉(xiāng)建設(shè)局網(wǎng)站數(shù)據(jù)分析軟件
  • 如何在本地安裝部署 wordpress深度優(yōu)化
  • 順德企業(yè)手機網(wǎng)站建設(shè)廣州seo推廣優(yōu)化
  • 好搜客網(wǎng)站優(yōu)勢的seo網(wǎng)站優(yōu)化排名
  • 眾云網(wǎng)聯(lián)做的網(wǎng)站效果好嗎網(wǎng)絡(luò)營銷外包公司
  • 茂易網(wǎng)站建設(shè)鏈接購買平臺
  • 淮安企業(yè)網(wǎng)站搜一搜
  • wordpress拿站清遠新聞最新消息
  • b2b平臺選亞馬遜企業(yè)購網(wǎng)站優(yōu)化排名的方法
  • 上海百度關(guān)鍵詞推廣名片seo什么意思
  • 做企業(yè)網(wǎng)站需要做什么seo托管
  • 廈門外貿(mào)網(wǎng)站建設(shè)公司惠州seo排名收費