咨詢電(diàn)話(huà):023-88959644    24小(xiǎo)時(shí)服務熱線:400-023-8809
NEWS CENTER ·
新聞動态
關注中技(jì)互聯 關注前沿

軟件開(kāi)發面向對象設計(jì)原則

發表日期:2015-04-13    文章編輯:    浏覽次數(shù):7    标簽:

  什麽樣的設計(jì)才是一個(gè)良好的面向對象設計(jì)?一個(gè)面向對象的設計(jì)應該遵守下面幾個(gè)法則;

  1.單一職責原則

  單一職責原則的具體(tǐ)表述為(wèi),一個(gè)類應該有(yǒu)且僅有(yǒu)一個(gè)職責,所謂一個(gè)類的職責是指引起這個(gè)類變化的原因,如果一個(gè)類具有(yǒu)一個(gè)以上(shàng)的職責,那(nà)麽就會(huì)有(yǒu)多(duō)個(gè)不同的原因引起這類變化,其實就是耦合了多(duō)個(gè)互相不相關的職責,就會(huì)降低(dī)這個(gè)類的內(nèi)聚性.

  2.關閉原則

  這個(gè)原則的意思是軟件實體(tǐ)應該對擴展開(kāi)放,而對修改關閉.

  3.裏氏代換原則

  裏氏代換原則指子類型能夠替換掉它們的基類型,若對每個(gè)類型S的對象O1都存在一個(gè)類型TO2,使得(de)在所有(yǒu)針對T編寫的程序P,O1替換O2,程序P行(xíng)為(wèi)功能不變,ST的子類型4.依賴反轉原則

  依賴反轉原則表述如下:

  >高(gāo)層不應該依賴于低(dī)層模塊,二者都應該依賴于抽象;

  >抽象不應該依賴于細節,細節應該依賴于抽象;

  >任何變量都不應該持有(yǒu)一個(gè)指向具體(tǐ)類的指針或者引用;

  >任何類都不應該從具體(tǐ)類派生(shēng);

  >任何方法都不應該覆寫它的基類中的已經實現的方法.

  5.組合複用原則

  組合/聚合複用原則優先使用組合/聚合而不是繼承.

  6.迪米特原則

  迪米特法則又稱最少(shǎo)知識原則,它的特點如下:

  >隻和(hé)直接朋友(yǒu)對話(huà)

  >每個(gè)單元對其他單元僅僅具有(yǒu)有(yǒu)限的了解

  >每個(gè)單元應該僅僅與它的朋友(yǒu)對話(huà),不要和(hé)陌生(shēng)人(rén)對話(huà)

  7.接口隔離原則

  接口隔離原則是不要強迫客戶依賴于它們不用的方法.

  如果強迫客戶程序依賴于那(nà)些(xiē)它們不使用的方法,這将導緻所有(yǒu)客戶程序之間(jiān)的偶合,換句話(huà)說,如果一個(gè)客戶程序依賴于一個(gè)含有(yǒu)它不使用的方法的類,但(dàn)是其它客戶程序卻要使用這個(gè)方法,那(nà)麽當其他客戶要求這個(gè)類改變時(shí),就會(huì)影(yǐng)響到這個(gè)客戶程序,我們希望盡可(kě)能地避免這種耦合,因此接口需要進行(xíng)隔離.

  本文由重慶網頁設計(jì)專家(jiā)-重慶做(zuò)網站(zhàn)小(xiǎo)編收集發布:http://www.zjcoo.com

如沒特殊注明(míng),文章均為(wèi)中技(jì)互聯原創,轉載請(qǐng)注明(míng)來(lái)自www.zjcoo.com
相關新聞

CopyrightZJCOO technology Co., LTD. All Rights Reserved.    

渝ICP 備11003429号

  • qq客服
  • 公衆号
  • 手機版
  • 新浪微博