设计模式
Lingbug
别忘了,曾经你也是第一名!
展开
-
23种设计模式-23-备忘录模式
联系人对象:/// <summary> /// 联系人对象 /// </summary> public class Contact { public Contact(string name, string tel) { this.Name = name; t...原创 2019-11-04 17:22:56 · 177 阅读 · 0 评论 -
23种设计模式-22-访问者模式
对象抽象类(被访问者):/// <summary> /// 老师抽象类 /// </summary> public abstract class Teacher { public Teacher(string name, List<Student> students) { ...原创 2019-11-04 16:06:17 · 98 阅读 · 0 评论 -
23种设计模式-21-责任链模式
请假申请:/// <summary> /// 请假申请对象 /// </summary> public class LeaveApply { public LeaveApply(string applyUserName, int applyDays) { this.ApplyUse...原创 2019-11-04 15:07:30 · 132 阅读 · 0 评论 -
23种设计模式-19-状态者模式
用户:/// <summary> /// 用户 /// </summary> public class Person { public Person() { this.State = new NewState(0, this); } public ...原创 2019-11-04 11:42:53 · 150 阅读 · 0 评论 -
23种设计模式-18-中介者模式
/// <summary> /// 用户 /// </summary> public abstract class Person { public Person(string name, decimal money) { this.Name = name; th...原创 2019-11-02 17:11:31 · 163 阅读 · 0 评论 -
23种设计模式-17-观察者模式
/// <summary> /// 腾讯(被观察者):腾讯下面也有很多业务(公众号,游戏等等...) /// </summary> public abstract class TengXun { public string Title { get; set; } public string Content ...原创 2019-11-02 16:21:26 · 150 阅读 · 0 评论 -
23种设计模式-16-迭代器模式
/// <summary> /// 迭代器接口 /// </summary> public interface ITerator { bool MoveNext(); object GetCurrent(); void Next(); void Reset(); ...原创 2019-11-02 14:59:33 · 140 阅读 · 0 评论 -
23种设计模式-15-命令模式
/// <summary> /// 命令对象 /// </summary> public abstract class Command { public Command(Receiver receiver) { Console.WriteLine("实例化一个命令"); ...原创 2019-11-02 14:04:58 · 114 阅读 · 0 评论 -
23种设计模式-14-模板方法模式
第一种实现:抽象类/// <summary> /// 第一种实现:抽象类 /// </summary> public abstract class MakeFood { public void Make() { PourOil(); WaitOilHot()...原创 2019-11-01 18:19:42 · 123 阅读 · 0 评论 -
23种设计模式-13-代理模式
/// <summary> /// 代理模式必须代理类和真实类实现同样的接口 /// </summary> public abstract class Person { public abstract void Buy(); } /// <summary> /// 真实...原创 2019-11-01 17:33:39 · 147 阅读 · 0 评论 -
23种设计模式-12-享元模式
/// <summary> /// 车:内部状态 /// </summary> public class Car { public Car(string color) { this.Color = color; Console.WriteLine("Car被实例...原创 2019-11-01 16:33:44 · 109 阅读 · 0 评论 -
23种设计模式-11-外观模式
public class ValidateChooseSubject { public bool IsFull(string subjectName) { //模拟判断课程是否选满 Console.WriteLine("判断{0}课程是否选满...", subjectName); va...原创 2019-11-01 15:13:47 · 99 阅读 · 0 评论 -
23种设计模式-10-组合模式
一、常规实现:不安全/// <summary> /// 产品类 /// </summary> public abstract class Product { public Product(string name) { this.Name = name; } ...原创 2019-11-01 14:30:55 · 163 阅读 · 0 评论 -
23种设计模式-09-装饰者模式
/// <summary> /// 人类 /// </summary> public abstract class Person { public abstract void Develop(); } /// <summary> /// 这个是我本人,我也是人类,所以要继承人类...原创 2019-11-01 11:55:04 · 108 阅读 · 0 评论 -
23种设计模式-08-桥接模式
public abstract class Os { /// <summary> /// 装系统 /// </summary> public abstract void InstallOs(string computerName); /// <summary> ...原创 2019-11-01 11:18:55 · 126 阅读 · 0 评论 -
23种设计模式-07-适配器模式
//已经存在的方法:我会开车 public class Car { public void Drive() { Console.WriteLine("开汽车!"); } }类适配://开飞机(新方法)我不会,所以我需要将这个适配到我会的(已有的方法) public interface...原创 2019-11-01 10:27:16 · 163 阅读 · 0 评论 -
23种设计模式-06-原型模式
[Serializable] public abstract class User { public User() { //模拟耗时操作 CoreService.CostTime(5); Console.WriteLine("User被无参构造了"); } ...原创 2019-10-31 17:30:21 · 156 阅读 · 1 评论 -
23种设计模式-05-建造者模式
public abstract class Programmer { public abstract void Develop(); public abstract void Test(); public abstract void Commit(); } public class NetProgrammer ...原创 2019-10-31 16:41:20 · 163 阅读 · 0 评论 -
23种设计模式-04-抽象工厂模式
public abstract class Xiaolongkan { public abstract void MakeHotpot(); } public class ShanghaiXiaolongkan : Xiaolongkan { public override void MakeHotpot() ...原创 2019-10-31 16:17:00 · 145 阅读 · 0 评论 -
23种设计模式-03-工厂方法模式
public abstract class Food { public abstract void Make(); } public class Chicken : Food { public override void Make() { Console.WriteLine("鸡肉做...原创 2019-10-31 15:47:13 · 161 阅读 · 0 评论 -
23种设计模式-02-简单工厂模式
public abstract class Food { public abstract void Make(); } public class Patato : Food { public override void Make() { Console.WriteLine("土豆做好...原创 2019-10-31 15:18:56 · 201 阅读 · 0 评论 -
23种设计模式-01-单例模式
public sealed class SingletonFirst { private SingletonFirst() { } private static SingletonFirst _Instance = null; public static SingletonFirst Instance { ...原创 2019-10-31 14:43:08 · 370 阅读 · 0 评论 -
23种设计模式-20-策略者模式
策略接口:/// <summary> /// 计算税后工资接口 /// </summary> public interface ICalcSalaryAfterTaxStrategy { decimal CalcSalary(decimal money); }不同策略实现类:1.<=5000/...原创 2019-11-04 14:11:37 · 154 阅读 · 0 评论