随笔分类 - 设计模式
摘要:外观模式(门面模式)特点:将一系列复杂的类包装成一个简单封闭接口构成:门面:将客户端的不同方法分配给相应的处理子系统子系统:不知道门面的存在,可以被客户端和门面调用示例代码:namespace Facade{ public class SCPQT { user1 u1 = new user1(); user2 u2 = new user2(); user3 u3 = new user3(); pu...
阅读全文
摘要:策略模式特点:准备一组算法,分别封装到各自的类中,使他们可以互换构成:策略上下文(Context),持有一个策略类的对象,提供动态设置策略方法抽象策略:通常是一个接口或者一个抽象类具体策略:包装了具体的算法和行为示例代码:namespace Strategy{ public abstract class Strategy { public abstract void WriteLog(); }}n...
阅读全文
摘要:适配器模式(包装模式)特点:把一个类的接口变成客户端所期待的另一种接口,从而使无法一起工作的类可以一起工作 强调代码的组织而不是实现,体现了优先使用组合而不是继承示例代码:namespace Adapter{ /// <summary> /// /// </summary> public class bird { public bird() { } public void...
阅读全文
摘要:工厂方法特点:将对象的创建放在工厂类中,利用抽象原理,将实例化行为延迟到工厂类中using System;using System.Collections.Generic;using System.Text;namespace OOAD_FactoryMethod{ class Program { static void Main(string[] args) { AbsFactory af = ...
阅读全文
摘要:简单工厂模式(静态工厂模式)特点:一个工厂返回一种类型的实例优缺点:1、工厂类内部逻辑负责创建相应的对象,体现了职责单一 2、工厂类负责的逻辑,如果出了问题将致使系统瘫痪3、系统扩展困难示例代码:namespace OOAD_Factory{ public abstract class Book { private double price; public double Price { get {...
阅读全文
摘要:单例模式学习笔记特点: 1、单例模式的类只有一个实例,并且对象只被创建一次 2、实例在类中创建 3、类中提供静态方法或者属性供外部调用类的实例要点: 1、单例类不能实现IConeable接口和序列化2、没有考虑到对象的销毁,在有垃圾回收的平台中可以不考虑 3、使用过程中要考虑到多线程处理使用代码示例:public partial class userControl : UserControl ...
阅读全文
摘要:面向对象的三大特性:封装、继承、多态三大基本设计原则:1。封装变化2。面向接口编程而非实现3。优先使用组合设计原则:1。单一职责原则 一个类只有一个单独的职责,多有的对象只关注自身职责的完成。2。开放关闭原则 对扩展时开放的对修改是关闭的。 实现方法: a。抽象化,将系统设计为不再更改的架构,抽象层预见了所有的扩展,在需要改变的时候只需要添加相应的实现。 b。封装变化,可变化的行为放在一个对象里,...
阅读全文

浙公网安备 33010602011771号