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

设计模式 7章

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

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

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

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

http://www.wxhsa.cn/company.asp?id=7707

相关文章:

  • 磁盘存储简介-轮子
  • 洛谷 P1967 [NOIP 2013 提高组] 货车运输 题解
  • cherry-pick 合并曾今某一次提交
  • 向量数据库 FAISS、LanceDB 和 Milvus
  • ruoyi-vue自动生成代码
  • 拥抱新一代 Web 3D 引擎,Three.js 项目快速升级 Galacean 指南
  • Fast IO 模板
  • kylin V11安装mysql8.4.5(glibc.2.28版本)
  • iOS 上架 App 流程全解析 苹果应用发布步骤、App Store 审核流程、ipa 文件上传与 uni-app 打包实战经验
  • P6801 花式围栏
  • ms sql dml 操作
  • 黑白染色方法
  • Windows 数字签名获取与验证详解
  • 转化率提升300%,火山引擎Data Agent以“一客一策”突破企业营销增长瓶颈
  • 矩阵模板
  • 快读模板
  • ipadװwindowsϵͳshell
  • cpu的各种寄存器及其功能
  • 如何关闭电视的ACR功能及其对隐私保护的重大意义
  • huggingface 模型权重文件
  • vscode设置单击选中带连字符的单词
  • P4147 玉蟾宫(悬线法)
  • 全局平衡二叉树
  • Transactional注解的方法里 spring怎么知道我用的是哪个jdbctemplate实例
  • 根据参数查询
  • 关于非侵入式脑机接口面向C端一个应用想法
  • Blelloch并行扫描算法
  • 国产化DevOps生态崛起:Gitee如何赋能企业数字化转型
  • 【IEEE出版】2025年电气、控制与人工智能国际学术会议(ICOECAI 2025)
  • 采购计划 vs 物料需求计划(MRP),采购新手最容易搞混的两份“清单”!