TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
最近在看设计模式的时候突然有所感悟,于是想记录下来:
. Z, S. D1 ^( ]- r8 h D- O* `0 L( B' ]
单一职责原则(SRP):在编程的过程中,对每个类要做到高内聚,低耦合,最好是一个类制作一件事情,在前面的ssh应用博客中,可以看到,有其事struts框架,每个action都会对应一个action的类,这样的每个类仅仅做一件事使得系统的结构更加清晰。同时降低了耦合。
" |( |( P5 y8 w; S; o/ W9 `* c7 |0 l+ f
开发封闭原则(OCP):使用SSH框架开发几个系统之后,你会发现,对于每个系统的拓展嗾使极其方便的,要增加一个新的功能,仅仅需要添加几个极少的类,有些时候DAO以下甚至不用修改,这一原则保证了我们的系统面向修改封闭,面向拓展开放,因此,当我们增加功能时候会十分方便。
3 L! b, z9 |) J( c0 ?% P3 W. q* B5 @+ [( {$ U( j6 x
接口隔离原则(ISP):这一原则要求编程者使用多个小的接口代替一个大的接口,这样做可以保证系统没有冗余,说白了接口隔离原则就是接口最小号原则,在客户端用到的方法向接口里面写,用不到的写他干嘛?
" k( s( L1 L5 ^5 s2 E5 l1 t. @5 d- G* U! m6 T2 c
依赖倒转原则(DIP):这个原则与spring的IOC不是一回事,依赖倒转原则要求高层次模块不依赖与低层次模块,他们都依赖于抽象。同时要求抽象不依赖于具体,具体要依赖与抽象。说白了,这一原则要求我们面向接口编程。
8 ?4 u7 w5 K7 S( ]" ]* x2 z/ V; M! R9 A) j; z4 M6 F; _; o
Liskov替换原则:要求子类对象能够替换父类对象。 7 F W9 w# _( P z* S4 {4 ?, O
5 m' u1 I0 ^2 X9 x% N
以上是面向对象设计的五大原则。# l, f. t# Z) H2 Q* }* p) H
|
|