设计模式

A collection of 4 posts
设计模式之动作型
设计模式

设计模式之动作型

大家好,这里是编程Cookbook。本文是对设计模式中创建模式的详细讲解,共11种,分别是观察者模式、责任链模式、策略模式、模板方法模式、状态模式、迭代器模式、备忘录模式、命令模式、中介者模式、访问者模式、解释器模式。 常用动作型模式 观察者模式(Observer Pattern) 观察者模式是一种行为型设计模式,它定义了对象之间的一对多依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会收到通知并自动更新。观察者模式的核心思想是解耦观察者与被观察者,使得它们可以独立变化。 组成成分 观察者模式通常包含以下角色: 1. 主题(Subject/Topic): * 维护一个观察者列表,并提供注册、删除和通知观察者的方法。 2. 具体主题(Concrete Subject): * 实现主题接口,存储具体状态,并在状态改变时通知观察者。 3. 观察者(Observer):
22 min read
设计模式之结构型
设计模式

设计模式之结构型

大家好,这里是编程Cookbook。本文是对设计模式中创建模式的详细讲解,共7种,分别是适配器模式、桥接模式、组合模式、装饰器模式、代理模式、外观模式、享元模式。 常用结构型模式 适配器模式(Adapter Pattern) 适配器模式是一种结构型设计模式,它允许将一个类的接口转换成另一个接口。适配器模式的核心思想是解决接口不兼容的问题,使得原本由于接口不匹配而无法一起工作的类可以协同工作。 组成成分 适配器模式通常包含以下角色: 1. 目标接口(Target): * 客户端期望的接口,定义了客户端需要使用的功能。 2. 适配者(Adaptee): * 需要被适配的类,通常是已经存在的类,但其接口与目标接口不兼容。 3. 适配器(Adapter): * 适配器的核心类,负责将适配者的接口转换成目标接口。 * 适配器可以是 类适配器(通过继承实现
18 min read
设计模式之创建型
设计模式

设计模式之创建型

大家好,这里是编程Cookbook。本文是对设计模式中创建模式的详细讲解,共5种,分别是单例模式、工厂模式、抽象工厂模式、建造者模式和原型模式。 常用创建型模式 单例模式 什么是单例模式? 单例模式(Singleton Pattern)是一种创建型设计模式,它确保一个类只有一个实例,并提供一个 全局访问点来获取该实例。单例模式的核心思想是控制对象的创建过程,避免重复创建对象,从而节省资源并保证一致性。 单例模式的特点 1. 唯一性:在程序的整个生命周期里,该类只会有一个实例存在。 2. 全局可访问性:提供了一个能让所有代码都可以访问到唯一实例的全局访问点。 3. 延迟加载特性:在有需求的时候才去创建实例(比如通过懒汉式来实现这一特性)。 单例模式的使用场景 单例模式适用于以下场景: 1. 配置管理:系统中只需要一个全局配置对象,用于统一管理配置信息。 2. 日志记录:日志对象通常只需要一个实例,用于记录系统的运行状态。 3. 数据库连接池:数据库连接池通常只需要一个实例,用于管理数据库连接。 4. 缓存系统:缓存对象只
18 min read
设计模式概要介绍
设计模式

设计模式概要介绍

大家好,这里是编程Cookbook。本文是对设计模式的概要介绍,包括 23 种设计模式和一些设计原则。 优秀代码的特点 我们所说的优秀代码通常具有以下特点: 1. 可靠性、安全性:功能正确、运行稳定、确保安全。 2. 性能优化:时间复杂度优、空间复杂度优、资源利用高效。 3. 可维护性、可拓展性:低耦合高内聚、遵循设计原则和模式、易于修改扩展。 4. 可读性:命名规范、结构清晰、注释适当。 5. 可测试性:单元测试友好、可模拟隔离。 6. 兼容性:跨平台兼容、版本兼容。 设计模式基础概念 设计模式及其作用 什么是设计模式? 设计模式是解决软件设计中常见问题的经验总结,它提供了一套经过验证的、可重用的解决方案模板。设计模式并不是具体的代码,而是一种设计思想或方法论,用于指导开发者编写高质量、可维护、可扩展的代码。 设计模式的作用
28 min read