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

设计模式学习总结(一)

设计模式学习笔记

  • 面向对象、设计原则、设计模式、编程规范、重构之间的关系

面向对象、设计原则、设计模式、编程规范、重构之间的关系

  • 面向对象
    现在,主流的编程范式或者是编程风格有三种:面向过程、面向对象和函数式编程。
    需要掌握七大知识点:
    1、面向对象的四大特性:封装、抽象、继承、多态
    2、面向对象编程与面向过程编程的区别和联系
    3、面向对象分析、面向对象设计、面向对象编程
    4、接口和抽象类的区别以及各自的应用场景
    5、基于接口而非实现编程的设计思想
    6、多用组合少用继承的设计思想
    7、面向过程的贫血模型和面向对象的充血模型
  • 设计原则
    SOLID原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则、依赖倒置原则
    DRY 原则、KISS 原则、YAGNI 原则、LOD 法则
  • 设计模式
    设计模式是针对软件开发中经常遇到的一些设计问题,总结出来的一套解决方案或者设计思路。大部分设计模式要解决的都是代码的可扩展性问题。
    经典的设计模式有 23 种,分为创建型、结构型、行为型三大类。随着编程语言的演进,一些设计模式(比如 Singleton)也随之过时,甚至成了反模式,一些则被内置在编程语言中(比如 Iterator),另外还有一些新的模式诞生(比如 Monostate)。有些模式是比较常用,要花多点时间理解掌握,对于不常用的设计模式,我们只需要稍微了解即可。
    1、创建型
    常用的有:单例模式(singleton)、工厂模式(工厂方法factory method和抽象工厂abstract factory)、建造者模式(builder)。
    不常用的有:原型模式(prototype)。
    2、结构型
    常用的有:代理模式(proxy)、桥接模式(bridge)、装饰者模式(decorate)、适配器模式(adapter)。
    不常用的有:外观模式(facade)、组合模式(composite)、享元模式(Flyweight)。
    3、行为型
    常用的有:观察者模式(observer )、模板模式(template)、策略模式(strategy)、职责链模式(chain of responsibility)、迭代器模式(iterator)、状态模式(state)。
    不常用的有:访问者模式(visitor)、备忘录模式(memento )、命令模式(command)、解释器模式(interpreter )、中介模式(mediator )。
  • 编程规范
    编程规范主要解决的是代码的可读性问题。
http://www.lryc.cn/news/480848.html

相关文章:

  • 软考中级 软件设计师 上午考试内容笔记(个人向)Part.1
  • PHP API的数据交互类型设计
  • 【EFK】Linux集群部署Elasticsearch最新版本8.x
  • 【大数据测试 Elasticsearch — 详细教程及实例】
  • 用ArkTS写一个登录页面(实现简单的逻辑)
  • matlab将INCA采集的dat文件多个变量批量读取到excel中
  • list集合常见去重方式以及效率对比
  • JavaWeb——Web入门(7/9)-Tomcat-介绍(Tomcat 的简介:轻量级Web服务器,支持Servlet/JSP少量JavaEE规范)
  • 【SpringBoot】19 文件/图片下载(MySQL + Thymeleaf)
  • 陪诊问诊APP开发实战:基于互联网医院系统源码的搭建详解
  • Spark 中 RDD 的诞生:原理、操作与分区规则
  • c++构造与析构
  • C++(函数重载,引用,nullptr)
  • django+postgresql
  • 前端滚动锚点(点击后页面滚动到指定位置)
  • 使用SSL加密465端口发送邮件
  • 一些面试题总结(一)
  • 泄露的文档显示 Google 似乎意识到了 Tensor 处理器存在过热问题
  • python爬虫案例——网页源码被加密,解密方法全过程
  • 2.4_SSRF服务端请求伪造
  • 数据分析反馈:提升决策质量的关键指南
  • 一步步安装deeponet的详细教学
  • Devops业务价值流:版本发布最佳实践
  • 背包问题(三)
  • linux之调度管理(2)-调度器 如何触发运行
  • 深入理解 Vue 3 中的 Props
  • 校园周边美食探索及分享平台
  • 内网对抗-信息收集篇SPN扫描DC定位角色区域定性服务探针安全防护凭据获取
  • 石墨舟氮气柜:半导体制造中的关键保护设备
  • 性能调优专题(7)之Innodb底层原理与Mysql日志机制深入剖析