随笔 - 478  文章 - 0  评论 - 31  阅读 - 57万 

随笔分类 -  设计模式

设计模式-七大原则
摘要:软件开发七大原则 一、开闭原则:面对扩展开放,面对修改关闭 (1)指的是在开发的过程中尽量的去扩展代码,而不是去修改原来的代码,以免影响到之前的逻辑。 (2)强调的是用抽象构建框架,用实现扩展细节。 (3)可以提高软件系统的可复用性及可维护性 (4)例:原有课程类,闲杂要对课程进行打折,应该怎么处理 阅读全文
posted @ 2019-10-06 17:39 song.yan 阅读(232) 评论(0) 推荐(0) 编辑
代理模式(Proxy)--动态代理(CGLIB)
摘要:上一篇:代理模式(Proxy)--动态代理(jdk) (1)CGLIB技术是第三方代理技术,可以对任何类生成代理,代理的原则是对目标对象进行继承代理 (2)如果目标对象被final修饰,则无法被CGLIB代理 阅读全文
posted @ 2018-06-02 16:41 song.yan 阅读(126) 评论(0) 推荐(0) 编辑
代理模式(Proxy)--动态代理(JDK)
摘要:在是上一篇博客中实现了静态代理。 在上篇的结尾提到了一个问题: 思考:如果我们下需要对火车,自行车实现相同的代理,我们又该如何实现呢? 这篇博客就来解决这个问题: 解决这类问题需要用到动态代理技术,实现对不同的类,不同方法的代理 1,动态代理的实现方式: 动态代理其实就是在代理类和被代理类之间加入了 阅读全文
posted @ 2018-06-02 11:20 song.yan 阅读(237) 评论(0) 推荐(0) 编辑
代理模式(Proxy)--静态代理
摘要:1,代理模式的概念 代理模式:为其他对象提供一种代理,以控制对这个对象的访问(代理对对象起到中介的作用,可去掉功能服务或者添加额外的服务) 2,代理模式的分类 (1)远程代理:类似于客户机服务器模式 为不同地址空间的对象提供局域网代表对象 举例说明:通过远程代理监控各个店铺 (2)虚拟代理:根据需要 阅读全文
posted @ 2018-06-01 14:57 song.yan 阅读(333) 评论(0) 推荐(0) 编辑
AbstractFactory
摘要:定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。 (1)定义产品接口 (2)产品的具体实现类 (3)定义工厂接口 (6)工厂的实现类 (7)模拟客户端的使用 可以使用同一个工厂创建多个相关或者相互依赖的对象,不需要具体指明要生产对象的类,只需要说明部分特性(一部分特性由生 阅读全文
posted @ 2018-04-25 14:50 song.yan 阅读(167) 评论(0) 推荐(0) 编辑
FactoryMethod
摘要:工厂方法模式 定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类 工厂方法的简单实现 (1)创建简单的产品接口 (2)创建具体的产品实现类 (3)创建工厂接口 (4)创建具体的工厂 (5)模拟客户端的实现 如果客户想得到一个南方的苹果,则需要告诉南方工厂 阅读全文
posted @ 2018-04-25 14:21 song.yan 阅读(157) 评论(0) 推荐(0) 编辑
Observer
摘要:对应慕课视频:https://www.imooc.com/video/8208 一、定义 1,定义对象的一种一对多的依赖关系。当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 二、观察者模式的结构 三、观察者模式的通用代码 (1)目标对象的定义 (2)具体的目标对象的定义 (3 阅读全文
posted @ 2018-04-23 17:54 song.yan 阅读(132) 评论(0) 推荐(0) 编辑
FlyWeight
摘要:应用:在Integer中-128~127封装成Integer对象放在池子中,使用时直接获取对象,所以: 这两个是同一个对象的不同引用 在这个范围之外的Integer对象每次使用都要重新创建,所以: 这两个Integer不是同一个对象 通俗描述享元模式: 如果很多很小的对象,他们有很多相同的部分,就可 阅读全文
posted @ 2018-04-22 23:38 song.yan 阅读(153) 评论(0) 推荐(0) 编辑
Factory Method 和AbstractFactory
摘要:对应慕课视频的连接:https://www.imooc.com/video/5316 1,工厂模式的应用场景 有一组类似的对象需要被创建 在编码时不能预见需要被创建哪种类的实例 在系统需要考虑扩展性的情况下,不应依赖产品类实例如何创建,组合和表达的细节 2,项目中的现状: 在软件系统中经常面临着“对 阅读全文
posted @ 2018-04-16 16:06 song.yan 阅读(176) 评论(0) 推荐(0) 编辑
Singleton
摘要:单例模式(Singleton) 对应的慕课视频:https://www.imooc.com/video/1772 单例设计模式用于保证一个类只有一个实例 他有两种表现形式:懒汉式,饿汉式 饿汉式和懒汉式最明显的区别就是两者对象实例化的时间不相同。 恶汉式是在类加载的时候就创建,懒汉式是在调用实例的时 阅读全文
posted @ 2018-04-16 15:44 song.yan 阅读(244) 评论(0) 推荐(0) 编辑
[转载]设计模式解密(23) - 总结篇
摘要:设计模式解密(23) - 总结篇 索引目录&&传送门: 总体来说设计模式分为三大类: 创建型模式(5种):单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式 结构型模式(7种):适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式 行为型模式(11种):策略模式、模板方法 阅读全文
posted @ 2018-03-28 08:33 song.yan 阅读(175) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示