![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
行走在路上的蜗牛
空杯心态,学无止境
展开
-
设计模式之Template Method
动机:对于某一项任务,常常有稳定的正常操作结构,但是各个子步骤却又很多改变的需求,或者由于固有的原因(比如框架与应用之间的关系)而无法和任务的整体结构同时实现。设计关键:任务要求有固定的操作框架优点:晚绑定,更加灵活缺点:代码如下:// ConsoleApplication1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include...原创 2020-04-17 22:00:19 · 140 阅读 · 0 评论 -
设计模式之面向对象八大原则
DIP(依赖倒置原则)--高层模块(稳定)和底层模块(变化)都应该依赖于抽象(稳定);实现细节(变化)依赖于抽象(稳定) OCP(开放封闭原则)--对扩展开放,对更改封闭;类模块应该是可扩展的,但是不可修改 SRP(单一职责原则)--一个类应该仅有一个引起它变化的原因;变化的方向隐含着类的责任 LSP(Liskov替换原则)--子类必须能够替换它们的基类(is-A);继承表达类型抽象 IS...原创 2020-04-17 21:52:52 · 139 阅读 · 0 评论 -
设计模式之适配器模式
动机:现有的对象不支持新的应用环境设计关键:在原有的接口上进行适配(并非修改原有接口)优点:有效理由现有代码,节省开发工作效率缺点:无代码如下:// ConsoleApplication1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include<iostream>using namespace std;cla...原创 2020-04-17 21:59:07 · 115 阅读 · 0 评论 -
设计模式之简单工厂
动机:通过“对象创建”来绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持对象创建的稳定设计关键:客户端完全不需要操作具体类,只需要提供要创建具体类的参数优点:实现了对象的创建和使用的分离 客户无需知道产品的类名,只需要传入响应的参数即可 客户端不改动的情况下,服务端新增或者更换具体的产品类功能显得更加灵活缺点:工厂类的职责过重,包含了加减乘除各...原创 2020-04-17 21:56:59 · 126 阅读 · 0 评论