设计模式-初步认识

目录

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

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

相关推荐
java1234_小锋3 小时前
Spring里AutoWired与Resource区别?
java·后端·spring
风象南3 小时前
Spring Boot 定时任务多实例互斥执行
java·spring boot·后端
崎岖Qiu3 小时前
【深度剖析】:结合 Spring Bean 的生命周期理解 @PostConstruct 的原理
java·笔记·后端·spring·javaee
毕设源码-郭学长3 小时前
【开题答辩全过程】以 基于Springboot旅游景点管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
是三好3 小时前
JUC并发编程
java·开发语言
芬加达4 小时前
leetcode221 最大正方形
java·数据结构·算法
猿小羽4 小时前
深度实战:Spring AI 与 MCP(Model Context Protocol)构建下一代 AI Agent
java·大模型·llm·ai agent·spring ai·开发者工具·mcp
曾几何时`4 小时前
二分查找(十)1146. 快照数组 pair整理
java·服务器·前端
编程(变成)小辣鸡4 小时前
JVM、JRE和JDK 的关系
java·开发语言·jvm
lbb 小魔仙4 小时前
【Java】Spring Cloud 微服务系统搭建:核心组件 + 实战项目,一步到位
java·spring cloud·微服务