设计模式之设计原则 C#
成为一名资深架构师首先要懂设计模式,在懂之前,要清楚设计原则,原来我就吃过这个亏,很久以前有人问我设计原则,我是一头茫然,不是只有设计模式吗?且不知设计原则就像是写书法一样,楷体就是方正,竖道有垂露等,隶书横有蚕头燕尾等。
这些“秩序”遵循SOLID architecture principles。这组面向对象的设计原则,通过实践总结为
1),SRP(Single Responsibility Principle):单一责任原则;
A class should take care of only one responsibility.单个类有且仅有一个职能。
2),OCP(Open Closed Principle):开放封闭原则;
Extension should be preferred over modification.对扩展是开放的,对修改是封装的。
3),LSP(Liskov Substitution Principle):里氏替换原则;
objects seamlessly(无缝地) during runtime polymorphism(多态,多态性).子类和父类有相同的行为和状态。
4),ISP(Interface Segregation Principle):接口分离原则;
Client should not be forced to use a interface if it does not need it.接口分离规则旨在使用多个特定功能
的接口来避开通用接口造成的富余化。
5),DIP(Dependency Inversion Principle): 依赖倒置原则;
High level modules should not depend on low level modules but should depend on abstraction.容器是规则,对象只关心自己完成的部分。
最新文章
- vmware 三种网络模式
- 理解soft-clipped reads
- androidstudio 之 svn配置 汇总
- SQL Server常用命令
- [LeetCode] Pow(x, n) 二分搜索
- SqlParameter[] 添加
- 使用Zend OpCache 提高 PHP 5.5+ 性能
- 数据库(批处理, 事务,CachedRawSetImpl类
- Effective Java2读书笔记-对于所有对象都通用的方法(三)
- css3选择器的比较(三) -- 元素选择器 (+, ~)
- springMVC 使用jstl
- 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo
- 下载python的Crypto库出现的问题的解决:ModuleNotFoundError: No module named 'Crypto'
- python的for循环、while循环
- [CocoaPods]Podfile文件
- Codeforces Round #510 (Div. 2) D. Petya and Array(离散化+反向树状数组)
- npm安装时一些错误
- logstash marking url as dead 问题解决
- C++课程小结 继承与派生
- 【2017-01-08】QTimer与QThread的调度时间精度