设计模式
ijrench
菜鸟一只
展开
-
设计模式-创建型&结构型&行为型
创建型:转移对象的创建。简单工厂:转移了矛盾,但并没有解决矛盾,并集中了矛盾。工厂模式:单一职责,结构型:包一层。行为型:甩锅。设计模式终极建议:1、设计模式是解决一类问题存在的,并不是万能的,更多的时候是融合应用。2、设计模式就那么几个核心套路,解决问题时不要拘泥于招数,直接上套路解决问题,解决完了再看看是属于什么模式的。3、不推荐过度设计,但是写代码后,再多想一下,找找代码坏的味道。...原创 2021-07-04 22:15:13 · 94 阅读 · 0 评论 -
设计模式-原型模式
原型模式Apple.csclass Apple{ public static Apple apple = new Apple(); public static Apple getPrototype(){ return apple.MemberwiseClone(); }}Main.cspublic void Main(){ Fruit fruit = Apple.getPrototype();}原创 2021-07-04 20:19:02 · 64 阅读 · 0 评论 -
设计模式-工厂模式
工厂模式先定义基类 :Fruit.cs再定义子类:Apple.csBanana.cs定义工厂接口:IFactory.csInterface IFactory{ Fruit createInstance();}定义Apple工厂类:AppleFactory.csclass AppleFactory: IFactory { public Fruit createInstance(){ return new Apple(); }}定义Banana工厂类:BananaFa原创 2021-07-04 20:12:56 · 68 阅读 · 0 评论 -
设计模式-单例模式
单例模式说明:整个程序有且只有一个实例,该类负责创建自己的对象,同时确保只有一个对象被创建。1、静态方法创建。class Apple{ public static Apple apple = null; public static Apple getSingleton(){ if(apple == null){ apple = new Apple(); } return apple; }}2、静态构造函数创建。class Apple{ public static原创 2021-07-04 19:57:26 · 72 阅读 · 0 评论 -
设计模式-简单工厂
简单工厂先定义基类 :Fruit.cs再定义子类:Apple.csBanana.cs简单工厂类:SimpleFactory.csclass SimpleFactory{ public static Fruit createFruit(string fruitName){ case: "Apple": return new Apple(); case: "Banana": return new Banana(); default: throw new Excep原创 2021-07-04 19:36:55 · 83 阅读 · 0 评论