1.UML类图一般的表达方法:依赖关系(参数),关联关系(成员);a依赖b,b是参数,依赖(a- - -〉b);a 关联b,b是a成员变量。关联(a---------〉b)聚合,组合是一对。继承(泛化),接口(实现)是一对。
2.设计模式总体上分为 构建模型,结构模型,行为模型。
2.1构建模型是构造函数;
(1)工厂模式:定义了一个创建对象的接口,但子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到了子类。原则:依赖抽象类,不依赖具体类。
(2)抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。原则:依赖抽象类,不依赖具体类
(3)单例模式
(4)原型模式
(5)创建者模式:封装一个产品的构造过程,并允许按步骤构造。
2.1结构模式是结构的组合和壮大 ;
(1)装饰者模式:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性
的替代方案。装饰者可以在所委托被装饰者的行为之前与/或之后,加上自己的行为,以达到特定的目的。原则-类应该对扩展开放,对修改关闭
外观模式(Facade);
适配器模式(Adapter);
代理模式(Proxy);
桥模式(Bridge);
组合模式(Composite);
享元模式(Flyweight)
2.2行为模型是通信。
(1)观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖着都会收到通知并自动更新。原则-为了交互对象之间松耦合而努力;
状态模式(State);
策略模式(Strategy);
职责链模式(Chain of Responsibility);
命令模式(Command);
访问者模式(Visitor);
调停者模式(Mediator);
备忘录模式(Memento);
迭代器模式(Iterator);
解释器模式(Interpreter)。
3.设计模式原则
3.1把变化的部分封装起来;
3.2针对接口编程,不针对实现;
3.3为了交互对象之间松耦合而努力;
3.4类应该对扩展开放,对修改关闭;
3.5依赖抽象类,不依赖具体类。
参考文献