当前位置: 首页 > news >正文

设计模式 7章

软件设计7大原则
开闭原则:是原则,在设计软件时保持扩展的开放性和修改的封闭性
里式替换原则:要求在继承时不要破坏父类的实现
单一职责原则:要求类的功能要单一
接口隔离原则:要求接口的设计要精简
依赖倒置原则:要求面向抽象编程,即面向接口编程
迪米特原则:提供一种降低系统耦合性的方式(一个类对于其他类知道的越少越好)
合成复用原则:要求组织类的关系时谨慎使用继承,即想要达到软件复用的目的,尽量使用对象组合或聚合,而不是继承关系

学习设计模式的目的
让程序具有:可读性、可靠性、可重用性、可扩展性、高内聚,低耦合

降低耦合度的方法
1少使用全局变量
2类属性和方法的声明少用public,多用private关键字
3尽量不用“硬编码”的方式写程序
4少使用类的继承,多用接口,隐藏实现的细节
5遵循一个定义只在一个地方出现

JavaGoF23分类
设计模式的分类(列几个重要的)
创建型模式:单例模式(singleton)保证一个类只有一个实例,并提供一个访问它的全局访问点、工厂模式(factory)定义一个创建对象的接口,但由子类决定需要实例化哪一个类。
结构性模式:代理模式(proxy)为其他对象提供一种代理以控制这个对象的访问
行为性模式:中介者模式(mediator)用一个中介对象来封装一系列的对象交互

http://www.rkmt.cn/news/7230.html

相关文章:

  • 洛谷 P1967 [NOIP 2013 提高组] 货车运输 题解
  • 【每日一问】示波器探头校准技巧和校准原理是什么?
  • 向量数据库 FAISS、LanceDB 和 Milvus
  • ms sql dml 操作
  • cpu的各种寄存器及其功能
  • 学python的第6天
  • 如何关闭电视的ACR功能及其对隐私保护的重大意义
  • TypeScript tsconfig选项 “lib” 是做什么的
  • Blelloch并行扫描算法
  • 牛客刷题-Day1
  • 第三届人工智能与自动化控制国际学术会议(AIAC 2025)
  • webshell流量 - voasem
  • 基于pyspark的双十一美妆数据分析及可视化 - 实践
  • 大模型三阶段训练方法(LLaMa Factory)
  • 三行Python代码实现深度学习推理:Infery全面解析
  • 网页禁止复制
  • 混元开源之力:spring-ai-hunyuan 项目功能升级与实战体验
  • Python 企业级自动语音识别库全解析
  • SAP 文件上传方式导入上、下限
  • 雷电预警系统:降低雷电灾害风险,保障人员安全与设施稳定运行 - 详解
  • Beyond Compare5中文破解版下载及安装使用教程
  • 鸿蒙应用开发从入门到实战(八):ArkTS自定义组件语法
  • 动态黑名单的运作机制与实时防护策略
  • 微服务分布式事务解决方案梳理 - 指南
  • JS对象池
  • objectarx项目props文件中判断条件的修改
  • 效率翻倍新技能:JDK8后的新特性
  • 百日筑基
  • 完整教程:基于RSim的自动驾驶高保真仿真场景实现方案
  • 用户只需要知道「怎么办」,不需要知道「为什么炸了」