设计模式笔记1-设计原则
1.1常见设计原则
1.简约原则(KISS)
2.不要重复自己(DRY)
3.讲述而不要询问(Tell,Don't Ask)
4.您不需要它(YAGNI)
5.分离关注点(SoC)
1.2S、O、L、I、D设计原则
1.单一责任原则(SRP):它要求每个对象只应该为一个元素而改变而且只有一个职责关注点。
2.开放封闭原则(OCP):它要求对于扩展应该是开发的,而对于修改应该是封闭的,这样应该就能够在不改变类的内部行为的情况下添加新功能扩展类。
3.里氏替换原则(LSP):LSP原则指出应该能够使用任何继承类来替代父类并且让其行为方式保持不变。
4.接口分离原则(ISP):ISP原则关注的是将契约的方法划分成若干职责分组,并且为这些分组指派不同的接口,这些客户端就不需要实现一个庞大的接口和一堆它们并不适用的方法。
5.依赖倒置原则(DIP):DIP原则的宗旨是将自己编写的类与具体的实现隔离开来,让这些类依赖于抽象类或者接口。
6.依赖注入(DI)和控制反转(IoC)原则:
1.3企业设计模式
1.分层
2.领域逻辑模式:Transaction Script(事务脚本),Active Record(活动记录),Domain Model(领域模型)。
3.对象关系映射:1.Unit of Work(工作单元)。2.Repository(资源库)。3.Data Mapper(数据映射器)。4.Identity Map(标识映射)。5.Lazy Loading(惰性加载)。6.Query Object(查询对象)。
4.Web表示模式:Model-View-Presenter(模型视图表示器),Model-View-Controller(模型-视图-控制器),Front Controller(前端控制器),Page Controller(页面控制器)。
1.4基本模式,行为模式和结构模式
1.Null Object模式(空对象)
2.Separated Interface模式(独立接口)
3.Gateway模式(网关)