摘要:
以穿衣为例: Component类:可以通过ConcreteComponent类动态添加职责 namespace Dacoration_Pattern.Class { abstract class Component { public abstract void Show(); } } Concre 阅读全文
摘要:
单一职责原则: 就一个类而言,应该仅有一个引起它变化的原因。通俗的理解就是一个类只做一件事情。 软件设计真正要做的许多内容,就是发现指责并把这些职责相互分离,如果你能想到多于一个的动机去改变这个类,那这个类的职责就不是单一的。 开放-封闭原则: 软件实体(类、模块、函数等等)应该可以扩展,但是不可以 阅读全文
摘要:
面向对象的编程,并不是类越多越好,类的划分是为了封装,分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类。如商场的打一折和打九折,虽然形式上不同,但是抽象出来的算法是一样的。 策略模式:定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化不会影响到使用算法的客户。 以超市 阅读全文
摘要:
简单工厂模式结构图:简单工厂模式以简单的加减乘除运算为例:运算符类(Operation):namespace CalcTest.Simple_Factory_patterns{ class Operation { private double numberA = 0; private double numberB = 0; public double NumberA { get { return numberA; } set { numberA = value; } }... 阅读全文