OOD的十一個基本原則
OOD應(yīng)該遵循的十一個基本原則,摘取自Robert C. Martin的The Principles of OOD一文 http://www.butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod
類設(shè)計原則:
- SRP,單一職責(zé)原則,一個類應(yīng)該有且只有一個改變的理由。
- OCP,開放封閉原則,你應(yīng)該能夠不用修改原有類就能擴(kuò)展一個類的行為。
- LSP,Liskov替換原則,派生類要與其基類自相容。
- DIP,依賴倒置原則,依賴于抽象而不是實現(xiàn)。
- ISP,接口隔離原則,客戶只要關(guān)注它們所需的接口。
包內(nèi)聚性原則:
- REP,重用發(fā)布等價原則,重用的粒度就是發(fā)布的粒度。
- CCP,共同封閉原則,包中的所有類對于同一類性質(zhì)的變化應(yīng)該是共同封閉的。?
- CRP,共同重用原則,一個包中的所有類應(yīng)該是共同重用的。
包耦合性原則:
- ADP,無環(huán)依賴原則,在包的依賴關(guān)系圖中不允許存在環(huán)。
- SDP,穩(wěn)定依賴原則,朝著穩(wěn)定的方向進(jìn)行依賴。
- SAP,穩(wěn)定抽象原則,包的抽象程度應(yīng)該和其穩(wěn)定程度一致