设计模式-初步认识

目录

🛻1.什么是设计模式

🚚2.设计模式的优点

🚍3.设计模式6大原则

🛴4.设计模式类型


1.什么是设计模式

  • 设计模式代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。
  • 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。
  • 这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

2.设计模式的优点

  • 提供了一种共享的设计词汇和概念,使开发人员更好地沟通和理解彼此的设计意图。
  • 提供了经过验证的解决方案,可以提高软件的可维护性、可复用性和灵活性。
  • 促进了代码的重用,避免了重复的设计和实现。
  • 通过遵循设计模式,可以减少系统中的错误和问题,提高代码质量。

3.设计模式6大原则

  • 1.单一职责原则**:**一个类只负责一个功能领域中的相应职责,是实现高内聚、低耦合的指导的方针
    • **高内聚:**尽可能类的每个成员方法只完成一件事,模块内部的代码,相互之间的联系越强,内聚就越高,模块的独立性就越好
    • **低耦合:**减少类内部,一个成员方法调用另一个成员方法,不要有牵一发动全身
  • **2.开闭原则:**对扩展开放,对修改关闭,拓展的时候,不修改原有的代码
  • **3.里氏替换原则LSP:**任何基类可以出现的地方,子类一定可以出现;在程序中尽量使用基类类型来对对象进行定义,而在运行时再确定其子类类型,用子类对象来替换父类对象
  • **4.依赖倒转原则:**高层模块不应该依赖低层模块,二者都应该依赖其抽象
  • **5.接口隔离原则:**使用多个隔离的接口,降低类之间的耦合度
  • **6.迪米特法则(最少知道原则):**一个实体应当尽量少地与其他实体之间发生相互作用,一个处在松耦合中的类一旦被修改,不会对关联的类造成太大波及

将六大原则的英文首字母拼在一起就是SOLID (稳定的) ,所以也称之为SOLID原则

4.设计模式类型

  • 1.创建型模式:**工厂模式、抽象工厂模式、单例模式、建造者模式、**原型模式
  • 2.结构型模式 :**适配器模式、桥接模式、装饰器模式、代理模式、**组合模式、外观模式、享元模式
  • 3.行为型模式 :**责任链模式、迭代器模式、观察者模式、状态模式、策略模式、模板模式、**备忘录模式、命令模式、访问者模式、中介者模式、解释器模式

4.1.创建型模式

提供了一种在创建对象的同时隐藏创建逻辑的方式,使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活

4.2.结构型模式

这些模式关注对象之间的组合和关系,旨在解决如何构建灵活且可复用的类和对象结构。

4.3.行为型模式

这些模式关注对象之间的通信和交互,旨在解决对象之间的责任分配和算法的封装

相关推荐
LucianaiB4 分钟前
毕业老学长给我留的最后一句话是:“AI 写的,别挂我名。” 我直接 神(Seed Evolving) 来!助我!
后端
IvanCodes10 分钟前
RAG 实战教程(一):RAG 工作原理与完整流程——分片、索引、召回、重排和生成
人工智能·后端·agent
·薯条大王30 分钟前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
用户9385156350740 分钟前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformer.js 全链路实战
前端·设计模式·typescript
CodeSheep1 小时前
稚晖君公司人事大变动,来了!
前端·后端·程序员
小满zs1 小时前
Go语言第八章(函数)
后端·go
stark张宇3 小时前
实战Go高级特性:Context超时控制、defer资源回收与Channel通信的关键避坑点
后端·go
ZJH__GO4 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
程序员黑豆4 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
命运之光4 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言