设计模式
小K的大师兄
这个作者很懒,什么都没留下…
展开
-
模板方法模式
一、理论基础 1.在现实中我们经常会遇到这种情况,有些事情的实现有固定的流程步骤,但是每一个步骤的具体实现是可变的,如我们申请护照的步骤一般是提交申请、提交相关材料、窗口办理、银行缴费、领证,这是一个固定不变的流程,但是对于每一个步骤具体怎样实现对于每一个办理点来说可能不一样,如领证这个步骤,我可以是直接去办理点领取,也可以是选择邮寄等; 2.以上这类问题应用到软件领域,我们可以采用模板方法模原创 2014-07-24 14:16:49 · 475 阅读 · 0 评论 -
策略模式
模拟场景: 某某公司要求我们做一个商场收银系统, 提出需求:商场会不定时举办一系列的优惠活动,优惠方式暂定为:打折扣,满多少还多少(例如:满300还100) 初步场景分析: 看到这个需求,第一感觉就会潜意识的认为“这个太简单了”。 1.商场收银系统:定义为winform的应用程序 2.活动优惠的计算,判断一下就可以了。 初步代码实现:转载 2014-07-23 17:31:30 · 769 阅读 · 0 评论 -
简单工厂模式
咱们先来看看一个简单的计算机案例(一个控制台应用程序): Operation是一个运算类,加减乘除方法继承于Operation。 [csharp] view plaincopyprint? /// /// 运算类 /// abstract public class Operation {转载 2014-07-23 17:42:05 · 753 阅读 · 0 评论 -
设计原则
面向对象开发、设计,一般情况下应遵循以下七大设计原则,单一职责原则、开放封闭原则、里氏替换原则、依赖倒置原则、接口分隔原则、组合/聚合复用原则、迪米特原则。遵循这些设计原则能使我们设计的系统更具稳定性和可扩展性,增强了系统可维护性。这七大原则可以分为以下两部分: 设计目标:开放封闭原则(良好的扩展)、里氏替换原则(合理的继承)、迪米特原则(高内聚低耦合) 设计方法:单一职责原则(...原创 2019-02-02 13:38:05 · 337 阅读 · 0 评论