随笔分类 -  Design Model

设计模式学习总结(五)创建者模式(Builder)
摘要:创建者模式,主要针对某些产品有类似的生产步骤,且有需要有先后顺序的进行各个部件的生成。 一、示例展示: 通过学习及总结,以下是我完成的创建者模式的示例: 1.创建产品类:Laptop public class Laptop { ArrayList LaptopParts = new ArrayLis 阅读全文

posted @ 2017-06-29 23:39 Joye_Zhou 阅读(223) 评论(0) 推荐(0)

设计模式学习总结(十)责任链模式(Chain Of Responsibility)
摘要:责任链主要指通过一连串的操作来实现某项功能或者在处理相关的业务时,对于自己的业务则进行处理,反之,对于不属于自己的业务,则进行下发! 一、示例展示: 以下例子主要通过对煤矿对井下警告信息的处理来进行说明,如果瓦斯浓度超出一定范围值时,某个系统会自动发送短信到矿井的值班领导手机上,如果超出范围继续扩大 阅读全文

posted @ 2017-05-31 23:49 Joye_Zhou 阅读(344) 评论(0) 推荐(0)

设计模式学习总结(六)原型模式(Prototype)
摘要:原型模式即通过对象拷贝的方式来实现对同类对象的生成的一种设计模式! 浅复制:对于值类型,则直接复制该值,对于引用类型的字段则是对其引用的复制,如果原引用与现引用只要有一个的值发生变化,则都会造成两者值的变化。 深复制:对于值类型,则直接复制该值,对于引用类型的字段则复制其引用的对象,如果有多个/级嵌 阅读全文

posted @ 2017-05-03 22:26 Joye_Zhou 阅读(246) 评论(0) 推荐(0)

设计模式学习总结(七)适配器模式(Adapter)
摘要:适配器模式主要是通过适配器来实现接口的统一,如要实现国内手机在国外充电,则需要在不同的国家采用不同的适配器来进行兼容! 一、示例展示: 以下例子主要通过给笔记本电脑添加类似手机打电话和发短信的功能来详细演示适配器模式的应用! 对象适配器: 1. 创建抽象类:Handphone public abst 阅读全文

posted @ 2017-05-03 22:25 Joye_Zhou 阅读(278) 评论(0) 推荐(0)

设计模式学习总结(八)策略模式(Strategy)
摘要:策略模式,主要是针对不同的情况采用不同的处理方式。如商场的打折季,不同种类的商品的打折幅度不一,所以针对不同的商品我们就要采用不同的计算方式即策略来进行处理。 一、示例展示: 以下例子主要通过对手机和笔记本添加不同的策略来实现策略模式的应用! 1. 创建抽象策略角色:DailyProductStra 阅读全文

posted @ 2017-05-03 22:24 Joye_Zhou 阅读(235) 评论(0) 推荐(0)

设计模式学习总结(二)工厂模式
摘要:同简单工厂模式相比,工厂模式的使用更加复杂,但使用范围却更加的广泛! 一、示例展示: 通过学习及总结,以下是我做的一个工厂模式的示例: 1. 定义抽象工厂角色 //Abstract Factory public abstract class Creator { public abstract Car 阅读全文

posted @ 2017-04-24 22:03 Joye_Zhou 阅读(185) 评论(0) 推荐(0)

设计模式学习总结(一)简单工厂模式
摘要:简单工厂模式不是23中设计模式中的一种,但它是我最早接触的一种设计模式! 一、示例展示: 通过学习及总结,以下是我做的一个简单工厂模式的示例: 1. 客户端调用工厂类角色(GetCarBrand)并传入客户需要的产品: static void Main(string[] args) { Consol 阅读全文

posted @ 2017-04-11 22:50 Joye_Zhou 阅读(328) 评论(0) 推荐(0)

设计模式学习总结(三)抽象工厂模式
摘要:同简单工厂模式和工厂模式相比,工厂模式只提供一个产品等级结构而抽象工厂模式提供的的产品等级结构≥2。搜索关于抽象工厂模式的解释,基本上都是指对具有相同主题的(单个/独)工厂进行封装。何为相同主题,这里就涉及到对产品簇与产品等级结构的理解,具体请参看如下图所示: 一、示例展示: 通过学习及总结,以下是 阅读全文

posted @ 2017-03-31 02:23 Joye_Zhou 阅读(510) 评论(0) 推荐(0)

设计模式学习总结(四)单例模式
摘要:单例模式即一个类只能有一个实例,并且需该类自动提供该实例。 一、示例展示: 通过学习及总结,以下是我做的两个单例模式的示例: 懒汉式的单例模式: using System; namespace DesignModel { class Program { static void Main(string 阅读全文

posted @ 2017-03-31 02:20 Joye_Zhou 阅读(208) 评论(0) 推荐(0)

导航