程序设计的SOLID原则
来源:互联网 发布:新手如何快速入门seo 编辑:程序博客网 时间:2024/05/22 03:32
要想设计一个良好的程序,建议采用SOLID原则,若考虑了SOLID,可以使程序在模块内具有高内聚、而模块间具有低耦合的特点。其中SOLID原则包括5方面的内容:
S---单责任原则(SRP);一个模块只做一件事,责任单一,以便修改和错误定位。
O---开闭原则(OCP); 一个模块要对扩展开放,对修改关闭。
(1)通过增加代码来扩展功能,而不是修改已经存在的代码。
(2)若客户模块和服务模块遵循同一个接口来设计,则客户模块可以不关心服务模块的类型,服务模块可以方便扩展服务(代码)。
(3)OCP支持替换的服务,而不用修改客户模块。
L---李氏代换原则(LSP);客户模块不应关心服务模块的是如何工作的;同样的接口模块之间,可以在不知道服务模块代码的情况下,进行替换。---接口或父类出现的地方,实现接口的类或子类可以代入。
I---接口隔离原则(ISP);客户模块不应该依赖大的接口,应该裁减为小的接口给客户模块使用,以减少依赖性。如Java中一个类实现多个接口,不同的接口给不用的客户模块使用,而不是提供给客户模块一个大的接口。
D---依赖反转原则(DIP);
(1).高层模块不要依赖低层模块;
(2).高层和低层模块都要依赖于抽象;
(3).抽象不要依赖于具体实现;
(4).具体实现要依赖于抽象;
(5).抽象和接口使模块之间的依赖分离。
***用函数指针,象接口一样,也可以去掉两个函数之间的直接依赖。
- 程序设计的SOLID原则
- 程序设计的SOLID原则
- 类的设计SOLID原则
- SOLID原则
- SOLID 原则
- solid原则
- SOLID原则
- SOLID原则
- SOLID 原则
- SOLID原则
- SOLID 原则
- SOLID原则
- SOLID原则
- 面向对象程序设计之五大原则(SOLID)
- 面向对象的设计的SOLID原则
- 面向对象设计的SOLID原则
- 面向对象设计的SOLID原则
- 面向对象设计的SOLID原则
- C中.h头文件的写法
- 进程池实现客户端连接请求程序
- Generating Unique Key (Finger Print) for a Computer for Licensing Purposes
- epoll()学习
- SQL union用法
- 程序设计的SOLID原则
- 11第三个放个假低功耗
- 动态规划入门三---背包问题(1)
- [Leetcode] Word Break、Word BreakII
- 好用的同步代码块和同步函数
- 语法错误javac(编译),逻辑错误java(运行)
- 网络工程实施技术与方案大全(77.9M)|pdf电子书
- 显著目标检测思路(转载自yangchuancv)
- Ubuntu 12.10 安装nginx后报502错误