物件導向程式設計的基本原則

2021-07-05 04:45:05 字數 920 閱讀 9159

1)open-close principle(ocp),開-閉原則。講的是設計要對擴充套件有好的支援,而對修改要嚴格限制。這是最重要也是最為抽象的原則.

2)liskov substituition principle(lsp),黎克特制代換原則。很嚴格的原則,規則是「子類必須能夠替換基類,否則不應當設計為其子類。」也就是說,子類只能去擴充套件基類,而不是隱藏或覆蓋基類

3)dependence inversion principle(dip),依賴倒置原則。設計要依賴於抽象而不是具體化」。換句話說就是設計的時候我們要用抽象來思考,而不是一上來就開始劃分我需要哪些哪些類,因為這些是具體。

4)inte***ce segregation principle(isp),介面隔離原則。不能強迫使用者去依賴那些他們不使用的介面。換句話說,使用多個專門的介面比使用單一的總介面總要好。

它包含了2層意思:

- 介面的設計原則:介面的設計應該遵循最小介面原則,不要把使用者不使用的方法塞進同乙個介面裡。

如果乙個介面的方法沒有被使用到,則說明該介面過胖,應該將其分割成幾個功能專一的介面。

- 介面的依賴(繼承)原則:如果乙個介面a依賴(繼承)另乙個介面b,則介面a相當於繼承了介面b的方法,那麼繼承了介面b後的介面a也應該遵循上述原則:不應該包含使用者不使用的方法。

反之,則說明介面a被b給汙染了,應該重新設計它們的關係。

5)single-responsibility principle」 單一職責原則。就乙個類而言,應該只專注於做一件事和僅有乙個引起它變化的原因。

6)law of demeter 迪公尺特法則又叫作最少知道原則。就是說乙個物件應當對其他物件有盡可能少的了解,不和陌生人說話。

物件導向的基本原則

單一職責原則 srp 就乙個類而言,應該僅有乙個引起它變化的原因。如果乙個類承擔的責任過多,就等於把這些職責耦合在一起,乙個職責的變化可能會削弱或者抑制這個類完成其他職責的能力。這種耦合會導致脆弱的設計,當變化發生時,設計會遭受意想不到的破壞。軟體設計真正要做的許多內容,就是發現職責並把那些職責相互...

物件導向設計基本原則

物件導向設計不外乎遵循五大原則 第一 單一職責原則 即 乙個類應該只負責單一的職責,而將其餘的職責讓其他類來承擔,這樣每個類之間相互協調來完成一件任務。第二 開閉原則 即對擴充套件是開放的,對修改是封閉的,因此需要注重抽象的運用 第三 替換原則 子類應該可以替換在父類出現的任何地方 第四 依賴倒置原...

物件導向設計基本原則

物件導向設計不外乎遵循五大原則 第一 單一職責原則 即 乙個類應該只負責單一的職責,而將其餘的職責讓其他類來承擔,這樣每個類之間相互協調來完成一件任務。第二 開閉原則 即對擴充套件是開放的,對修改是封閉的,因此需要注重抽象的運用 第三 替換原則 子類應該可以替換在父類出現的任何地方 第四 依賴倒置原...