1. 」開-閉」原則 (open-close principle)
乙個軟體實體應該對擴充套件開放,對修改關閉。
software entities should be open for extension,but closed for modification.
優越性:
1>通過擴充套件已有的軟體體統,可以提供新的行為,以滿足對軟體的新需求,使變化中的軟體系統有一定的適應性和靈活性。
2>已有的系統模組,特別是最重要的抽象層模組不能再修改,這就使變化中的軟體系統有一定的穩定性和延續性。
2.黎克特制替換原則(liskov substitution principle)
任何基類可以出現的地方,子類一定可以出現。
3.依賴倒轉原則(dependency inversion principle)
要依賴於抽象,不要依賴於實現。
4.合成/聚合復用原則(composition/aggregation principle)
要盡量使用合成/聚合,而不是繼承關係達到復用的目的。
5.迪公尺特法則(law of demeter)
乙個軟體實體應當與盡可能少的其他實體發生互相作用。
6.介面隔離原則(inte***ce segregation principle)
應當為客戶提供盡可能小的單獨的介面,而不要提供大的介面。
Java設計原則
物件導向的設計,我們通常會涉及到兩個元素 介面,類,及他們之間的協作關係。對於介面的設計 需要考慮介面隔離原則 對於類的設計 需要考慮類本身的設計,需要考慮類的職責是否單一 單一職責原則 對於有繼承關係的類設計,要注意子類是否改變父類的方法,目標是不要改變,子類應該只擴充套件父類的行為 黎克特制替換...
java設計模式 設計原則
開閉原則也就是說對擴充套件開放,對修改關閉,在程式需要進行業務拓展的時候,不能修改程式原有的 體系,而是選擇以擴充套件的原則,實現乙個熱拔插的效果。用 來說,就是在開發過程中,我們更多的應該使用介面和抽象類。不要存在多於乙個導致類變更的原因,也就是說每個類都應該實現單一的職責,如若不然,就應該把類拆...
Java設計原則 依賴倒置原則
高層模組不應該依賴低層模組,二者都應該依賴其抽象 抽象不應該依賴細節 細節應該依賴抽象。高層模組主要負責複雜的業務邏輯,低層模組主要負責基本的原子操作。高層模組本來依賴低層模組,只有依賴低層模組,才能使用低層模組的功能。那為什麼說高層模組不應該依賴低層模組?不是很奇怪嗎?其實應該這樣說,高層模組不應...