Mysticbinary

随笔分类 -  DesignPattern

Understanding UML in seconds
摘要:目录UML结构解析开发类图类图间的关系双向关联单向关联自关联多重性关联聚合关系组合关系依赖关系案例泛化关系案例接口与实现关系案例Practies UML 是一种分析设计语言,也就是一种建模语言。 UML结构解析 UML其结构主要包括以下几个部分: 视图(View) 多个图形组成的集合; 图(Diag 阅读全文

posted @ 2023-09-13 14:42 Mysticbinary 阅读(263) 评论(2) 推荐(2) 编辑

Visitor Pattern
摘要:光看访客这个名字,猜测这个访客模式应该非常好理解,只要玩过Linux的人,都能深刻明白Root和非Root和访客账号登录的巨大差别性。 # What is Visitor? 如果你没玩过Linux,那么假设公共的图书馆有一台电脑,有两个账户: - 其中一个是**管理员(Admin)**的账户,拥有这 阅读全文

posted @ 2023-09-08 15:44 Mysticbinary 阅读(24) 评论(0) 推荐(0) 编辑

Interpreter Pattern
摘要:It can explain what ? 如下是解释器要解释的主体: 加减乘除等运算,3+4/9+6*8 摩尔斯电码 正则表达式 El表达式 OGNL表达式 小明是北京人 小红是一名售货员 部门领导下发一则通知 ... How explain ? 解释器模式常用于对简单语言集的编译或分析,例如: 阅读全文

posted @ 2023-09-08 13:48 Mysticbinary 阅读(31) 评论(0) 推荐(2) 编辑

Induction of Design Pattern
摘要:网上查到的设计模式有23种,通过归纳去认识他们也是一种不错的视角。 我这边不按照主流的观点去划分为创建型、结构型、行为型三大类,我只归纳为创建型(Creational Class)、简单功能场景(Simple Method Class)、复杂功能场景(Complex Method Class)三大类 阅读全文

posted @ 2023-09-07 14:43 Mysticbinary 阅读(31) 评论(0) 推荐(1) 编辑

Mediator Pattern
摘要:Mediator Pattern 就类似现实生活中的中介(中间人),房屋中介、媒婆中介、权利寻租中介... ,现实中为什么需要中介,在现实中的原因主要是两个 一为了保护双方当事人的安全,只要中介人不泄密,他们双方就可以秘密的把交易完成,并且双方都是安全的。二是买卖双方并不信任双方,但是他们都共同的信 阅读全文

posted @ 2023-09-06 10:53 Mysticbinary 阅读(4) 评论(0) 推荐(1) 编辑

Bridge Pattern
摘要:# What is Bridge Pattern 桥接模式(Bridge Pattern),旨在将抽象部分和实现部分解耦,使它们可以独立地变化。该模式通过将抽象和实现分离,使它们可以独立地进行扩展和修改,同时通过桥接(Bridge)将它们连接起来。 将一个事物原本耦合在一起的东西,通过定义成抽象和实 阅读全文

posted @ 2023-09-05 22:54 Mysticbinary 阅读(23) 评论(0) 推荐(1) 编辑

Template Pattern —— Behavioral Class
摘要:# Hook Method 钩子方法(Hook Method)之所以被称为“钩子”,是因为它在算法或流程中提供了一个“钩子”,允许子类在特定的点上“钩入”自己的实现逻辑,从而影响算法的行为或流程的执行。 它类似于一个挂钩、锚点,所以叫Hook method, 它允许子类插入自定义的代码来改变或扩展算 阅读全文

posted @ 2023-09-05 17:39 Mysticbinary 阅读(17) 评论(0) 推荐(1) 编辑

Flyweight Pattern —— Creational Class
摘要:享元模式在主流的标准里是放到结构大类下的,但是我感觉这个模式的最终作用也是为了获取一个类,所以我将其划分到创建大类下。 # What is Flyweight Pattern Flyweight 是指轻量级的。 享元模式旨在支持大量细粒度的对象共享,以减少内存消耗。该模式通过共享相似对象的部分状态, 阅读全文

posted @ 2023-09-05 14:46 Mysticbinary 阅读(24) 评论(0) 推荐(1) 编辑

六大程序设计原则 + 合成复用原则
摘要:目录Global Diagram依赖倒置原则(依赖抽象接口,而不是具体对象)单一职责原则(类、接口、方法)开闭原则 (扩展开放,修改关闭)里氏替换原则(基类和子类之间的关系)接口隔离原则(接口按照功能细分)最少知道原则 (类与类之间的亲疏关系)合成复用原则(Composite Reuse Princ 阅读全文

posted @ 2023-08-31 10:09 Mysticbinary 阅读(89) 评论(0) 推荐(2) 编辑

Builder Pattern —— Structure Class
摘要:# Core 建造者模式又称为`生成器模式`,主要用于对复杂对象的构建、初始化,它可以**将多个简单的组件对象按顺序一步步组装起来**,**最终构建成一个复杂的成品对象**。 与工厂系列模式不同的是,建造者模式的主要目的在于把烦琐的**构建过程**从不同对象中抽离出来,使其脱离并独立于产品类与工厂类 阅读全文

posted @ 2023-08-30 19:24 Mysticbinary 阅读(28) 评论(0) 推荐(1) 编辑

Observer Patterns —— Behavorial Class
摘要:# Oberver Define Observer Patterns 定义对象间的**一种一对多**的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。 # Key elements - 主题(Subject)interface - 主题(Subject) - 订阅者 阅读全文

posted @ 2023-08-30 18:56 Mysticbinary 阅读(8) 评论(0) 推荐(1) 编辑

Composite Pattern —— Structure Class
摘要:# 应用场景 - 系统的文件处理系统 - UI界面的Menu item - 公司人员职级划分 - ... # What is Composite Pattern Composite Pattern(组合模式)也叫叉数、对象树、Object Tree、...。它的思想很类似自然界的树状结构。组合模式也 阅读全文

posted @ 2023-08-30 15:52 Mysticbinary 阅读(13) 评论(0) 推荐(1) 编辑

Prototype Pattern —— Creational Class
摘要:# Background knowledge 在Java中,Cloneable 接口是一个标记接口(Marker Interface,它们内部都没有方法和属性),实现Cloneable接口表示该对象能被克隆,能使用Object.clone()方法。 要实现克隆功能,需要满足以下两个条件: - 类实现 阅读全文

posted @ 2023-08-30 11:22 Mysticbinary 阅读(33) 评论(0) 推荐(1) 编辑

Factory Pattern —— Creational Class
摘要:目录What is Factory Pattern?三种工厂模式的识别工厂模式和抽象工厂模式的关系Simple Factory PatternFactory Method PatternAbstract Factory Pattern 工厂模式定义: 工厂模式是一种创建型设计模式,它提供了一种将对象 阅读全文

posted @ 2023-08-29 18:07 Mysticbinary 阅读(32) 评论(0) 推荐(1) 编辑

Singleton pattern —— Creational Class
摘要:# Guide 1. 先知道为什么要用单例模式; 2. 单例模式两种创建模式的认识: - 启动程序时马上创建;(积极型) - 启动程序后也不创建,只在用到时才创建; (懒惰型) 3. 懒惰型单例模式将遇到的多线程安全问题,所以就要学习线程安全版的懒惰型单例模式。 # What is singleto 阅读全文

posted @ 2023-08-29 17:06 Mysticbinary 阅读(5) 评论(0) 推荐(1) 编辑

Facade Pattern and Encapsulation—— Structure Class
摘要:如果只看代码的话,应该可以说Facade pattern(门面设计模式,也可以叫前台接待模式)是一种最简单的代码结构,不就封装吗!这玩意谁不会! 还是看它背后所蕴含的思想吧,看了之后发现背后的思想也很简单,非常好理解。 - -。 # Think Encapsulation: 在物理世界中,从古代的` 阅读全文

posted @ 2023-08-22 16:15 Mysticbinary 阅读(12) 评论(0) 推荐(0) 编辑

Strategy Pattern and State Pattern and Polymorphism
摘要:策略模式很类似现在多功能的洗衣机,每次在洗衣服之前,都需要由用户自己选择想要的洗衣策略,洗衣机收到指定的洗衣策略后,组合成一份新的算法和数据结构才去执行。 ![](https://img2023.cnblogs.com/blog/1552062/202309/1552062-202309070930 阅读全文

posted @ 2023-08-22 09:35 Mysticbinary 阅读(19) 评论(0) 推荐(0) 编辑

导航