
GOF23
软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
true?success:fail
想不是办法,干才有希望
展开
-
桥接模式
· 桥接模式场景: - 商城系统中常见的商品分类,以电脑为类,如何良好的处理商品分类销售的问题? · 问题: - 扩展性问题(类个数膨胀问题): · 如果要增加一个新的电脑类型:智能手机,则要增加各个品牌下面的类。 · 如果要增加一个新的品牌,也要增加各种电脑类型的类。 · 优化多层继承结构 · 违反单一职责原则: - 一个类:联想笔记本,有两个引起这个类变化的原因 · 桥接模式核心要点: - 处理多.原创 2021-03-15 15:34:39 · 222 阅读 · 2 评论 -
代理模式
· 代理模式(Proxy Pattern): - 核心作用: · 通过代理,控制对象的访问! 可以详细控制访问某个(某类)对象的方法,在调用这个方法前做前置处理,调用这个方法后做后置处理。(即:AOP的微观实现!) · AOP(Aspect Oriented Programming面向切面编程)的核心实现机制! · 代理模式(Proxy Pattern): - 核心角色: · 抽.原创 2021-03-15 15:33:53 · 85 阅读 · 0 评论 -
适配器模式
· 结构型模式: - 核心作用:是从程序的结构上实现松耦合,从而可以扩大整体类结构,用来解决更大的问题。 - 分类: · 适配器模式、代理模式、桥接模式、装饰器模式、组合模式、外观模式、享元模式 · 适配器模式adapter: - 生活中的场景 手机充电器USB和家用插座不一样 此时需要充电器大头来转换适配 · 什么是适配器模式adapter? - 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容.原创 2021-03-15 15:21:54 · 91 阅读 · 0 评论 -
原型模式
· 原型模式场景: - 思考一下:克隆技术是怎么样的过程?克隆羊多利大家还记得吗? - JavaScript语言中的,继承怎么实现?那里面也有prototype,大家还记得吗? · 原型模式: - 通过new产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式。 - 就是Java中的克隆技术,以某个对象为原型,复制出新的对象。显然,新的对象具备原型对象的特点。 - 优势有:效率高(直接克隆,避免了重新执行构造过程步骤)。 .原创 2021-03-15 15:17:13 · 92 阅读 · 0 评论 -
建造者模式
· 建造者模式场景: - 我们要建造一个复杂的产品。比如:神州飞船,IPhone。这个复杂的产品的创建。有这样一个问题需要处理: · 装配这些子组件是不是有个步骤问题? - 实际开发中,我们所需要的对象构建时,也非常复杂,有很多步骤需要处理时。 · 建造模式的本质: - 分离了对象子组件的单独构造(由Builder来负责)和装配(由Director负责)。从而可以构造出复杂的对象。这个模式适用于:某个对象的构建过程 复杂的情况下使用。 .原创 2021-03-15 15:15:03 · 84 阅读 · 0 评论 -
工厂模式
· 工厂模式: - 实现了创建者和调用者的分离。 - 详细分类: · 简单工厂模式 · 工厂方法模式 · 抽象工厂模式 · 面向对象设计的基本原则: - OCP(开闭原则,Open-Closed principle): 一个软件的实体应当对扩展开放,对修改关闭。 - DIP(依赖倒转原则,Dependence Inversion Principle): 要针对接口编程,不要针对实现编程。 - L.原创 2021-03-15 15:13:30 · 101 阅读 · 0 评论 -
单例模式
· 核心作用: - 保证一个类只有一个实例,并且提供一个访问该实例的全局访问点。 · 常见应用场景: - Windows的Task Manager(任务管理器)就是很典型的单例模式 - Windows的Recycle bin(回收站)也是很典型的单例应用。在整个系统运行过程中,回收站一直维护着仅有的一个实例。 - 项目中,读取配置文件的类,一般也只有一个对象。没有必要每次使用配置文件数据,每次new一个对象。 - 网站的计数器,一般也是采用的.原创 2021-03-15 15:11:37 · 74 阅读 · 0 评论 -
设计模式初始与介绍(GOF23)
设计模式GOF23 (GOF 四人帮) 》》》将设计者的思维融入大家的学习和工作中,更高层次的思考! 》》创建型模式: -单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式。 》》结构型模式: -适配器模式、代理模式、桥接模式、组合模式、外观模式、享元模式。 》》行为型模式: -模板方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。 GitHub 项目路径持续..原创 2021-03-15 15:09:33 · 79 阅读 · 0 评论