设计模式示例程序.zip
立即下载
资源介绍:
设计模式示例程序
在我们设计和开发一个OO系统时候有一个普遍的感觉就是不使用设计模式似乎一样可以完成一个系统的开发任务,但是系统的质量和可扩展性、可维护性就不敢恭维了,特别是对于一个需要长期迭代的产品来说,这些系统特性决定着产品能否快速和愉快的扩展和维护下去,所以作为一个有追求和负责人的开发人员,适当和灵活的在系统中使用设计模式是非常有必要。
### 一、概念
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的
### 二、目的
为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。
### 三、设计原则
##### 开闭原则
此原则是由Bertrand Meyer提出的。原文是:“Software entities should be open for extension,but closed for modification”。就是说模块应对扩展开放,而对修改关闭。例如工厂是模式中“抽象产品角色”提供了公共接口,“具体产品”角色通过继承“抽象产品角色”来进行不同的实现,这就是既对扩展开放,又不用修改已存在“具体产品”,也就是对修改关闭。
##### 里氏代换原则
里氏代换原则是由Barbara Liskov提出的。如果调用的是父类的话,那么换成子类也完全可以运行。
##### 依赖倒转原则
依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。
##### 接口隔离原则
每一个接口应该是一种角色,不多不少,不干不该干的事,该干的事都要干
##### 合成/聚合复用
合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)经常又叫做合成复用原则。合成/聚合复用原则就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新的对象通过向这些对象的委派达到复用已有功能的目的。它的设计原则是:要尽量使用合成/聚合,尽量不要使用继承
##### 最少知识原则
也叫迪米特法则。不要和陌生人说话,即一个对象应对其他对象有尽可能少的了解。
### 四、常见设计模式
![image](/blob/master/image/设计模式.jpg)
### 五、文章推荐
Snailclimb/JavaGuide/blob/master/docs/system-design/设计模式.md
### 六、备注说明
#### 开发工具:
* IntelliJ IDEA: 开发IDE
* PowerDesigner: 建模工具
#### 开发环境:
* Jdk8+
免责声明:
1.本资源仅供学习和交流使用,不保证其准确性、完整性、及时性或适用性。
2.本资源仅包含一般信息,不构成专业建议。在使用本资源时,请务必自行研究并谨慎决策。
3.我已尽力确保本资源的正确性和合法性,但不对其准确性、完整性和及时性做出保证。
4.本资源不应用于商业用途。
5.在使用本资源的过程中,用户应自行承担所有风险和责任,并遵守相关法律法规。
6.对于因使用本资源而产生的任何损失或损害,我概不负责。
请确保在使用本资源时仔细阅读并遵守以上免责声明。如果您有任何疑问或需要进一步帮助,请联系我。
资源最后修改时间:2024-09-24 21:52:54
23659972246234
de602907-1e96-4348-85f6-05af83045b58
资源文件列表:
设计模式示例程序.zip 大约有237个文件