軟體的可維護性和可復用性
1、單一職責原則
乙個物件應該只包含單一的職責,並且該職責被完整地封裝在乙個類中。
承擔的職責越多,被復用的可能性越小;高內聚、低耦合
2、開閉原則
軟體實體應當對擴充套件開放,對修改關閉。
不修改原有**的情況下擴充套件;對系統進行抽象化設計
3、黎克特制代換原則
所有引用基類的地方必須能透明地使用其子類的物件
使用基類物件的地方都能使用子類物件
4、依賴倒轉原則
高層模組不應該依賴底層模組,他們都應該依賴抽象。抽象不應該依賴於細節,細節依賴於抽象。
要針對介面程式設計,不要針對實現程式設計
5、介面隔離原則
客戶端不應該依賴於那些它不需要的介面。
6、合成復用原則
優先使用物件組合,而不是繼承來達到復用的目的。
7、迪公尺特法制
每乙個軟體單位對其他的單位都只有最少的知識,而且侷限於那些與本單位密切相關的軟體單位。
降低耦合,是類與類之間保持鬆散的耦合關係;引入合理的「第三者」
設計模式 物件導向設計原則
軟體的可維護性和可複製性是兩個非常重要的軟體質量屬性 物件導向物件設計原則是設計模式學習的基礎。每乙個設計模式都符合乙個或者多個物件導向設計原則 單一職責原則是最簡單的物件導向設計原則,它用於控制類的粒度大小 單一設計原則 乙個物件應該只包含單一的職責,並且該職責被完整的封裝在乙個類裡 這也意味著 ...
設計模式 物件導向設計原則
物件導向設計原則為支援可維護性復用而誕生,這些原則蘊含在很多設計模式中,它們是從許多設計方案中總結出的指導性原則。最常見的7種物件導向設計原則如下表所示 使用頻率 單一職責原則 single responsibility principle,srp 乙個類只負責乙個功能領域中的相應職責 開閉原則 o...
設計模式 物件導向設計原則
世界是具體的,認知是抽象的。像自然界中的生物 植物 動物乙個個名詞,就是對一系列具體個體抽象出來的稱謂,而魚 老虎 樹等就是乙個個實在的具體。哦,也許你會說,樹也是對一系列具體個體的抽象出來的稱謂,對也不對,對是因為樹確實是一系列具體個體的抽象稱謂,不對是因為照這個邏輯下去,就會陷入死迴圈,直到小到...