设计模式-初步认识

目录

🛻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.行为型模式

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

相关推荐
Zzj_tju13 小时前
Java 从入门到精通(十二):File 与 IO 流基础,为什么程序“读写文件”时总是容易出问题?
java·python·php
用户693717500138413 小时前
Android 开发,别只钻技术一亩三分地,也该学点“广度”了
android·前端·后端
gogogo出发喽13 小时前
使用Pear Admin Flask
后端·python·flask
橘子编程13 小时前
操作系统原理:从入门到精通全解析
java·linux·开发语言·windows·计算机网络·面试
飞Link13 小时前
LangGraph 核心架构解析:节点 (Nodes) 与边 (Edges) 的工作机制及实战指南
java·开发语言·python·算法·架构
hhhhhaaa13 小时前
SpringBoot 自定义参数解析器实现请求统一封装实践
后端
何陋轩14 小时前
Java线程池从入门到精通:框架自带 vs 自定义,我该怎么选?
后端
xuhaoyu_cpp_java14 小时前
Boyer-Moore 投票算法
java·经验分享·笔记·学习·算法
JavaEdge.14 小时前
Chrome加载已解压的扩展程序-清单文件缺失或不可读取 无法加载清单
java
iReachers14 小时前
HTML打包EXE配置管理教程:多项目打包设置一键保存、加载与切换
java·前端·javascript