设计模式
设计模式是对 软件设计中普遍存在的,反复出现的问题所提出的解决方案。本质上是为了增加软件的可扩展性,可维护性,通用性以及降低软件的复杂度。
软件设计的原则:复用性,扩展性
SOLID原则:
- 单一职责原则(Single Responsibility Principle)
- 开闭原则(Open/Closed Principle)
- 里氏替换原则(Liskov Subsitution Principle)
- 接口隔离原则(Interface Segregation Principle)
- 依赖倒置原则(Dependency Inversion Principle)
设计模式可以分为三类:
- 创建型模式: 提供创建对象的机制,增加已有代码的灵活性和复用性。
- 结构型模式:介绍如何将对象和类组装成较大的结构,并同时保持结构的灵活和高效。
- 行为型模式: 负责对象间的高效沟通和职责委派。
创建型模式:
用来描述“如何创建对象”,它的主要特点是将 对象的创建 和使用 分离。包括:
- 单例模式
- 原型模式
- 工厂模式
- 抽象工厂模式
- 建造者模式
结构型模式:
用来描述如何将类或者对象按照某种布局组成更大的结构。包括:
- 代理模式
- 适配器模式
- 桥接模式
- 装饰模式
- 外观模式
- 享元模式
- 组合模式
行为型模式:
用来识别对象之间的常用交流模式以及如何分配职责。包括:
- 模版方法模式
- 策略模式
- 命令模式
- 职责链模式
- 状态模式
- 观察者模式
- 中介者模式
- 迭代器模式
- 访问者模式
- 备忘录模式
- 解释器模式
建造者模式
将一个复杂对象分解成多个简单对象,并组合成复杂对象。
应用场景
需要生成的对象有复杂的内部结构,包含多个成员属性。这些属性之间相互依赖,需要指定其生成顺序。同时要隔离对象的创建和使用,使得相同的创建过程可以创建不同的产品。
工厂模式
工厂模式也是创建对象的一种模式,分为:
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
Go
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示