随笔分类 - 设计模式(23种)理解
设计模式就是解决问题的一种方案
摘要:单例模式 这个设计模式应该算是我最早接触到一个,也是从那个时候知道有一种东西叫设计模式,看到这种代码结构,有种将好的东西通过某种精美的包装进行包装一样,似锦上添花。 单例模式:单例模式中有一个单例类的结构,来保证系统中,该类只能够被实例化一个,通过这种方式控制系统中实例的个数,同时易于外界访问。 为
阅读全文
摘要:只为每天积累一点点。。。 简单工厂、工厂方法模式、抽象工厂模式的简单原理。 一、引子 话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)),还雇了司机为他开车。不过,爆发户坐车时总是这样:上Benz车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,
阅读全文
摘要:装饰者模式通过组合的方式来扩展对象的行为,而不依赖于继承,也就是说虽然类的框架中包含继承,但只是为了获取正确的类型,而不是继承一种行为。行为来自于装饰者和基础组件,或者与其他装饰者之间的组合关系。 装饰者模式描述:采用组合的方式将多个同类对象任意搭配组成一个对象,达到增强效果。比如java中的IO用
阅读全文
摘要:什么是观察者模式呢? 就是主题对象和依赖对象的一对多的关系,当主题变化时,依赖对象都能收到通知。也有人说是生产者和消费者关系,不管怎么说理解了就行。 场景:很多用户都订阅一篇新闻,当这篇新闻有变化时,订阅的用户都能收到通知 实现: 抽象一个观察者,它可以根据订阅的主题和状态值进行后续操作 定义读者1
阅读全文
摘要:策略模式:定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。 我下面就自己画类图说明自己心里理解的策略模式。 具体代码实现: 大致的执行代码就就是这样,具体实现细节还要完善。 总结: 首先,算法可以自由切换。这是策略模式本身定义的,只要实现抽象策略,它就成为策略家族的一个成员,通过封装角色
阅读全文
摘要:常有人调侃设计模式:语言留下的坑,就要设计模式来填。 设计模式就是描述在各种不同情况下,要怎么解决问题的一种方案。 对于一些项目,我们不可能做到一次开发终身使用,而是随着需求的不断增多,我们需要对程序进行不断地修改,以此来适应新的需求,通过好的设计模式,可以使我们程序松耦合,减少彼此之间的依赖,从而
阅读全文

浙公网安备 33010602011771号