设计模式
文章平均质量分 66
设计模式笔记
G真的很美
真正的大师,永远怀着一颗学徒的心
展开
-
设计模式学习笔记4(行为型)
行为型 描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法和对象间职责的分配 模板方法模式 概述 定义一个操作中的算法骨架,将算法的一些步骤延迟到子类中,使得子类在可以不改变算法结构的情况下重新定义该算法的某些特定步骤 优缺点 优点: 封装了不变部分,扩展可变部分。即将不变部分分装到父类中,可变部分交由子类实现 提取了父类中公共的代码部分,实现了代码的复用 符合了开闭原则 缺点: 增加了类的个数,使得系统更加庞大 使用继承关系导致无法添加新的方法 实现 publ原创 2021-04-15 15:38:49 · 65 阅读 · 0 评论 -
设计模式学习笔记3(结构型)
结构型 关注点’将类或对象按某种布局组成更大的接口’,分离类结构模型(采用继承或实现)和对象结构模型(采用组合或聚合) 代理模式 概述 为某对象提供一种代理以控制对象的访问。客户端通过代理对象间接访问该对象,从而限制、增强或修改该对象的一些特性 优缺点 优点: 提高被代理的对象的安全性 代理对象可以扩展被代理对象的功能 客户端与被代理对象分离。提高系统的扩展性,降低耦合度 缺点: 增加了系统的复杂度 客户端访问被代理对象时需要通过代理对象,会造成请求处理速度变慢 造成系统类数量的增多 实现原创 2021-04-14 10:26:47 · 60 阅读 · 0 评论 -
设计模式学习笔记2(创建型模式)
创建型 关注点是’怎样创建对象’,主要是将对象的创建与使用分离,降低系统的耦合度,使用户不需要关注对象的创建细节。 单列模式 概述 在全局范围下,一个类只存在一个实例对象 优缺点 优点: 保存内存中只有一个实例,减少内存开销 可以避免对资源的多重占用 可设置全局访问点,可以优化和共享资源的访问 缺点: 非面向抽象编程,扩展性低 并发测试中不利于调试 实现 饿汉式单列 /** * 单列对象 */ public class Singleton{ private static fi原创 2021-04-13 15:51:28 · 77 阅读 · 0 评论 -
设计模式学习笔记1
常用设计模式 什么是设计模式 一套被反复使用、多数人知晓、经过分类编目的代码设计经验的总结,描述了在软件设计过程中一些不断重复发生的的问题以及解决方案。 其目的是为了提高代码的可重用性、可读性和可靠性 基本要素 模式名称 应用场景 解决方案 实际效果 面向对象设计原则 开闭原则 概述 当应用的需求改变时,在不修改应用原有代码的前提下可以扩展模块的功能。即对扩展开放,对修改关闭。 作用 软件测试时只需对扩展内容进行测试 提高代码的可复用性 提高代码的可维护性 里氏替换原则 概述 子类可以扩展原创 2021-04-12 10:28:33 · 70 阅读 · 0 评论