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

设计模式小结一策略(strategy)模式

先上结论:

        一个不懂设计模式的程序员,是绝对写不好程序代码的,心中没有设计模式的概念,你写出代码,内行一看就是个草台班子。这篇文章仅是个人设计模式学习的一篇笔记,算是抛砖引玉,详细的概念和用法还需要自己敲代码一个个验证体会。

开干!

一、程序设计的基本原则:

1、封装变化,找出可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起

2、针对接口编程而不是针对实现编程

3、多用组合少用继承

4、为了交互对象之间的松耦合设计而努力

5、类应该对拓展开放对修改关闭

6、要依赖抽象,不要依赖具体类,依赖倒置原则

7、变量不可用持有具体类的

8、最少知识原则,只和你的密友谈话

9、好莱坞原则---别调用我们(别给我打电话),我们会调用你(我会给你打电话)

10、一个类应该只有一个引起变化的原因

策略(strategy)模式:

它定义了一系列算法,并将每个算法封装起来,使它们可以互换。策略模式让算法的变化独立于使用算法的客户。

在策略模式中,通常包含以下几个角色:

  1. 抽象策略角色(Strategy):这是一个抽象类或接口,定义了所有具体策略类需要实现的算法或行为。它通常由一个接口或者抽象类实现,为所支持的算法声明了抽象方法。
  2. 具体策略角色(ConcreteStrategy):这些类

http://www.kler.cn/a/380128.html

相关文章:

  • 全志A133 android10 LVDS幅值调节
  • 深入探讨 Jenkins 中 HTML 格式无法正常显示的现象及解决方案
  • 数字信号处理Python示例(5)使用实指数函数仿真PN结二极管的正向特性
  • 什么是 OpenTelemetry?
  • 408 计算机组成原理、操作系统:异常和中断的总结
  • Spring1(初始Spring 解耦实现 SpringIOC SpringDI Spring常见面试题)
  • 【测试工具】Fastbot 客户端稳定性测试
  • (微服务)服务治理:几种开源限流算法库/应用软件介绍和使用
  • 【数据结构】插入排序和希尔排序
  • PropTypes 和 TypeScript 在 React 中的比较
  • 深度学习每周学习总结J4(ResDenseNet 算法探索实践 - 鸟类识别)
  • 欠定方程有多个真正解,超定方程可能无解所以有最小二乘解
  • 鸿蒙HarmonyOS开发:给应用添加基础类型通知和进度条类型通知(API 12)
  • SpringBoot技术:打造新闻稿件管理平台
  • Timing修复的几种方法之setup
  • Django--models.py
  • 24/11/4 算法笔记 蛇形卷积
  • 杨传辉:云+AI 时代的一体化数据库|OceanBase发布会实录
  • [LeetCode-45] 基于贪心算法的跳跃游戏 II-最少跳跃次数的求解(C语言版)
  • Meta AI 推出机器人开源项目:推动触觉感知和人机交互的前沿研究
  • 安装中文版 Matlab R2022a
  • 基于STM32的智能温室环境监测与控制系统设计(代码示例)
  • Vue前端开发:元素动画效果之过渡动画
  • selinux和防火墙
  • 音频中sample rate是什么意思?
  • 为什么 5g 物理信道 采用不同的调制方式