【面试八股文】每日一题:谈谈你对设计模式的理解

2023-11-03

谈谈你对设计模式的理解

每日一题-设计模式-谈谈你对设计模式的理解【面试八股文】

  设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。通过对这些设计模式的合理使用能够是我们的系统更加的健壮。

六大设计原则

设计原则 简单说明
单一职责 一个类只负责一项职责
里氏替换原则 子类可以扩展父类的功能,但不能改变父类原有的功能
依赖倒置原则 要依赖于抽象,不要依赖于具体,核心思想是面向接口编程
接口隔离原则 建立单一接口,不要建立庞大臃肿的接口,<br>尽量细化接口,接口中的方法尽量少
迪米特法则
(最少知道原则)
一个对象应该对其他对象保持最少的了解
开闭原则 对扩展开放,对修改关闭

设计模式的分类

类别 说明
创建型模式 对象实例化的模式,创建型模式用于解耦对象的实例化过程。
结构型模式 把类或对象结合在一起形成一个更大的结构。
行为型模式 类和对象如何交互,及划分责任和算法。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【面试八股文】每日一题:谈谈你对设计模式的理解 的相关文章

随机推荐

  • Vue脚手架配置代理

    Vue脚手架中配置代理是在vue config js增加配置 1 单代理配置 devServer proxy http localhost 5001 总结 优点 配置简单 缺点 不能配置多个代理 不能灵活控制请求是否走代理 工作方式 如上配
  • 获取时间的方法(四种)

    Java 获取系统时间的四种方法 1 Date day new Date SimpleDateFormat df new SimpleDateFormat yyyy MM dd HH mm ss System out println df
  • JWT技术

    JWT 一 JWT 实现无状态 Web 服务 1 什么是有状态 有状态服务 即服务端需要记录每次会话的客户端信息 从而识别客户端身份 根据用户身份进行请求的处理 典型的设计如tomcat中的session 例如登录 用户登录后 我们把登录者
  • 算法训练 P1103

    算法训练 P1103 时间限制 1 0s 内存限制 256 0MB 编程实现两个复数的运算 设有两个复数 和 则他们的运算公式为 要求 1 定义一个结构体类型来描述复数 2 复数之间的加法 减法 乘法和除法分别用不用的函数来实现 3 必须使
  • QT多线程 信号槽收不到信息 Q_OBJECT关键

    信号和槽是Qt应用开发的基础 它可是将两个毫无关系的对象连接在一起 槽和普通的C 函数是一样的 只是当它和信号连接在一起后 当发送信号的时候 槽会自动被调用 只有加入了Q OBJECT 你才能使用QT中的signal和slot机制 如在新建
  • 一款windows的终端神奇,类似mac的iTem2

    终于找到了一款windows的终端神奇 类似mac的iTem2 来 上神器 cmder cmder是一款windows的命令行工具 就是我们的linux的终端 用起来和linux的命令一样 所以我们今天要做的是安装并配置cmder 在这里插
  • Android约束布局ConstrainLayout

    基本方向约束 layout constraintLeft toLeftOf layout constraintRight toRightOf 这两个基本上用不上因为 layout constraintStart toStartOf就相当于l
  • Linux新手入门

    1 什么是Linux系统 Linux 全称GNU Linux 是一种免费使用和自由传播的类UNIX操作系统 其内核由林纳斯 本纳第克特 托瓦兹于1991年10月5日首次发布 它主要受到Minix和Unix思想的启发 是一个基于POSIX的多
  • Verilog基本语法

    一 模块结构 二 信号类型 首先必须知道该信号的最大值 计算该信号的位宽 wire wire用于结构化器件之间物理连线的建模 在Verilog中 wire永远是wire 就是相当于一条连线 用来连接电路 不能存储数据 无驱动能力 是组合逻辑
  • 只需一个Prompt,ChatGPT秒变万能导师,轻松学习任意领域知识

    AI正在改变我们生活的方方面面 包括我们学习的方式 AI已经证明自己有能力成为我们的助手甚至是老师 帮助我们更有效地获取知识 拿ChatGPT来说 我们平时有什么问题都可以向它提问 不过想让它更高效的帮助我们 还是需要一定的调教方法的 最近
  • 云服务器被攻击了怎么解决

    随着互联网的发展 很多使用云服务器的网络工作者会发现经常会遭到一些来路不明的网络攻击 由于云服务器没有设置任何有力的防火墙 而当遭遇攻击时 常常导致服务器宕机陷入黑洞 造成业务无法开展而损失大量用户 那么使用云服务器被攻击要怎么去解决呢 第
  • QT——QTabWidget自定义背景色

    QTabWidget在自定义背景色上 tab区域和内容区域是不一样的 一 内容区域背景色的设置 这个很简单 直接在UI界面找到下图所示的地方设置background color就行 二 tab区域背景色的设置 在网上看到有的小伙伴说直接在上
  • ---Ubuntu 16.04 server 不能关机问题解决

    https serverfault com questions 712928 systemctl commands timeout when ran as root Failed to start reboot target Connect
  • 游戏引擎架构——【动画系统】阅读记录

    character animation system The big problem with the rigid hierarchy technique is that the behavior of the character s bo
  • RocketMQ系列之顺序消费

    前言 上节我们介绍了RMQ的两大亮点 重试和重复消费的问题 其实重试才能算亮点 重复消费最终还是要由我们自己来解决这个问题 RMQ自身并没有提供很好的机制 至少目前是没有 不知道将来会不会有 OK扯远了 今天呢 我们再来介绍RMQ一个不错的
  • 程序员接单当渠道

    接单之前 先简单说一下接私活的几种项目类型 之后直接上渠道 你可以对照着去找项目 程序员兼职主要分为三种 项目外协 项目整包和自由职业者驻场 所谓的项目外协 指的是需求方这边有自有工程师配合 只需要某个职位的工程师开发某个模块的项目 比如开
  • 股票入门浅学20210721

    A股 港股 美股 无论是上证50 还是沪深300都不能代表中国 我投资的是中国公司 不是A股公司 A股牛市更强更猛 这个时候适合投资A股 港股介于美股和A股之间 上市公司多为大企 市场机制更适合打新 美股十年牛市 是最适合股票投资的市场 总
  • 实战DeviceIoControl 之五:列举已安装的存储设备

    Q 前几次我们讨论的都是设备名比较清楚的情况 有了设备名 路径 就可以直接调用CreateFile打开设备 进行它所支持的I O操作了 如果事先并不能确切知道设备名 如何去访问设备呢 A 访问设备必须用设备句柄 而得到设备句柄必须知道设备路
  • 手撕BOOST

    原文链接 https mp weixin qq com s biz Mzk0NjIxODM3Mg mid 2247486612 idx 1 sn b3d95c6403c31738324e68e71a85268b chksm c308387f
  • 【面试八股文】每日一题:谈谈你对设计模式的理解

    谈谈你对设计模式的理解 每日一题 设计模式 谈谈你对设计模式的理解 面试八股文 设计模式 Design pattern 是一套被反复使用 多数人知晓的 经过分类编目的 代码设计经验的总结 通过对这些设计模式的合理使用能够是我们的系统更加的健