软件设计模式
文章平均质量分 88
庄小焱
我是庄小焱,某大厂Java高级工程师、PMP项目管理专家、系统架构设计师(高级)、CSDN博文专家。 博主在支付领域,金融领域、订单履约领域不断学习,同时在博客中分享自己学习知识和相关技术, 欢迎大家和我交流学习,欢迎大家关注我的博客。
展开
-
软件设计模式——软件设计原则
设计模式(Design Pattern)是一套被反复使用、多数人知晓的、无数工程师实践的代码设计经验的总结,它是面向对象思想的高度提炼和模板化,使用设计模式是为了让代码具有更高的可重用性,更好的灵活性和可拓展性,更易被人阅读和理解。比如使用继承会给程序带来侵入性,程序的可移植性降低,增加对象间的耦合性,如果一个类被其他的类所继承,则当这个类需要修改时,必须考虑到所有的子类,并且父类修改后,所有涉及到子类的功能都有可能产生故障。依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽象的东西要稳定的多。原创 2020-05-31 12:45:58 · 5328 阅读 · 0 评论 -
创建型设计模式——单例模式
单例模式定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例场景,也就是说:确保某个类有且只有一个对象的场景,避免产生多个对象消耗过多的资源,或者某种类型的对象应该有且只有一个。保证一个类仅有一个实例,并提供一个访问它的全局访问点。原创 2020-08-20 13:29:47 · 917 阅读 · 1 评论 -
创建型设计模式——生成器模式
摘要摘要本文主要分析设计模式 - 生成器(Builder),封装一个对象的构造过程,并允许按步骤构造。原创 2020-08-20 13:52:20 · 852 阅读 · 1 评论 -
创建型设计模式——工厂模式
本博文主要介绍软件设计模式中工厂模式,其中工厂设计模式的扩展为简单工厂(Simple Factory)、工厂方法(Factory Method)、抽象工厂(Abstract Factory)三种。原创 2023-09-26 14:44:22 · 409 阅读 · 0 评论 -
结构型设计模式——原型模式
本文主要分析设计模式 - 原型模式(Prototype),使用原型实例指定要创建对象的类型,通过复制这个原型来创建新对象。原创 2022-03-27 09:58:58 · 1353 阅读 · 0 评论 -
结构型设计模式——适配器模式
摘要本博文主要是介绍适配器模式的原理和应用场景。案例介绍晚上九点半,Tony 上了地铁,准备回家,正巧还有一个空位,赶紧走向前坐下。工作一天后,疲惫不堪的他正准备坐着打个盹小睡一会儿。这时进来两个小姑娘,一个小巧可爱,一个身姿曼妙;嬉笑地聊着天走到了 Tony 的前面,Tony 犹豫了片刻后还是绅士般地给小女孩让了个座……两个小姑娘道了声谢谢,便挤在一块坐下了,继续有说有笑地谈论着……Amy:周末在商场里看到你和一个帅哥在一起。好你个 Nina,脱单了也不告诉姐姐我,太不够意思了!怎么原创 2021-12-12 18:36:58 · 822 阅读 · 0 评论 -
结构型设计模式——桥接模式
桥接模式(Bridge pattern): 使用桥接模式通过将实现和抽象放在两个不同的类层次中而使它们可以独立改变。原创 2023-09-27 08:29:49 · 591 阅读 · 0 评论 -
结构型设计模式——装饰器模式
装饰者模式(decorator pattern): 动态地将责任附加到对象上, 若要扩展功能, 装饰者提供了比继承更有弹性的替代方案。本博文介绍结构型设计模式的装饰器模式,帮助大家更好学习和了解软件设计模式,更好的读懂源码设计。原创 2020-11-12 09:39:05 · 933 阅读 · 1 评论 -
结构型设计模式——组合模式
组合模式(composite pattern): 允许你将对象组合成树形结构来表现"整体/部分"层次结构. 组合能让客户以一致的方式处理个别对象以及对象组合。原创 2023-09-27 08:34:50 · 614 阅读 · 0 评论 -
结构型设计模式——外观模式
本文主要分析设计模式 - 结构型 - 外观(Facade),它提供了一个统一的接口,用来访问子系统中的一群接口,从而让子系统更容易使用。原创 2023-10-09 20:36:30 · 566 阅读 · 0 评论 -
结构型设计模式——享元模式
享元模式(Flyweight Pattern): 利用共享的方式来支持大量细粒度的对象,这些对象一部分内部状态是相同的。 它让某个类的一个实例能用来提供许多"虚拟实例"。原创 2020-10-30 14:54:50 · 211 阅读 · 0 评论 -
结构型设计模式——代理模式
动态代理是Java语言中非常经典的一种设计模式,也是所有设计模式中最难理解的一种。那什么是代理设计模式?代理设计的基础概念就是通过代理控制对象的访问,可以在这个对象调用方法之前、调用方法之后去处理/添加新的功能。(也就是AOP微实现)。代理在原有代码乃至原业务流程都不修改的情况下,直接在业务流程中切入新代码,增加新功能。原创 2020-11-11 15:56:37 · 815 阅读 · 0 评论 -
行为型设计模式——模板方法模式
模板方法模式(Template pattern): 在一个方法中定义一个算法的骨架, 而将一些步骤延迟到子类中. 模板方法使得子类可以在不改变算法结构的情况下, 重新定义算法中的某些步骤。原创 2020-10-30 14:39:39 · 607 阅读 · 5 评论 -
行为型设计模式——观察者模式
监听的对象叫观察者(后面提到监听者,其实就指观察者,两者是等价的),被监听的对象叫被观察者(Observable,也叫主题 Subject)。监听模式又名观察者模式,顾名思意就是观察与被观察的关系,比如你在烧开水得时时看着它开没开,你就是观察者,水就是被观察者。原创 2021-12-12 14:01:24 · 1528 阅读 · 0 评论 -
行为型设计模式——责任链模式
责任链模式(Chain of responsibility pattern): 通过责任链模式, 你可以为某个请求创建一个对象链. 每个对象依序检查此请求并对其进行处理或者将它传给链中的下一个对象。原创 2023-09-28 09:48:37 · 2123 阅读 · 0 评论 -
行为型设计模式——策略模式
策略模式(strategy pattern): 定义了算法族, 分别封闭起来, 让它们之间可以互相替换, 此模式让算法的变化独立于使用算法的客户。原创 2020-11-12 15:33:45 · 1841 阅读 · 1 评论 -
行为型设计模式——观察者模式
观察者模式(observer pattern): 在对象之间定义一对多的依赖, 这样一来, 当一个对象改变状态, 依赖它的对象都会收到通知, 并自动更新。原创 2021-04-02 09:17:39 · 207 阅读 · 0 评论 -
行为型设计模式——中介者模式
本文主要分析设计模式中介者模式(Mediator pattern) : 使用中介者模式来集中相关对象之间复杂的沟通和控制方式。原创 2023-09-27 08:22:46 · 440 阅读 · 0 评论