策略模式
策略模式1. 定义定义一系列算法,将每个算法都封装起来,并且使它们之间可以相互替换。策略模式使算法可以独立于使用它的用户而变化 2. 核心思想对算法、规则进行封装,使得替换算法和新增算法更加灵活 3. 模型说明3.1 设计要点策略模式中主要有三个角色,在设计策略模式时要找到并区分这些角色。 (1)上下文环境(Context):起着承上启下的封装作用,屏蔽上层应用对策略(算法)的直接访问,封装可能存在的变化。 (2)策略的抽象(Strategy):策略(算法)的抽象类,定义统一的接口,规定每个子类必须实现的方法。 (3)具备的策略:策略的具体实现者,可以有多个不同的(算法或规则)实现。 3.2策略模式的优缺点优点(1)算法(规则)可自由切换。 (2)避免使用多重条件判断。 (3)方便拓展和增加新的算法(规则)。 缺点:所有策略类都需要对外暴露 4....
职责模式
...
监听者模式
...
UML
1. UML定义UML是英文 Unified Modeling Language 的缩写,简称UML(统一建模语言),它是一种由一整套图组成的标准化建模语言,用于帮助系统开发人员阐明、设计和构建软件系统。UML 的这一整套图被分为两组,一组叫结构性图,包含类图、组件图、部署图、对象图、包图、组合结构图、轮廓图;一组叫行为性图,包含用例图、活动图(也叫流程图)、状态机图、序列图、通信图、交互图、时序图。其中类图是应用最广泛的一种图,经常被用于软件架构设计中 2. 常见的关系常见的关系类图用于表示不同的实体(人、事物和数据),以及它们彼此之间的关系。该图描述了系统中对象的类型以及它们之间存在的各种静态关系,是一切面向对象方法的核心建模工具。 UML 类图中最常见的几种关系有:泛化(Generalization)、实现(Realization)、组合(Composition)、聚合(Aggregation)、关联(Association)和依赖(Dependency)。这些关系的强弱顺序为:泛化=实现 > 组合 > 聚合 > 关联 >...
Python Style Guide
Python Code Style GuideTable of Contents General Principles Code Layout Naming Conventions Comments & Documentation Functions & Classes Imports Error Handling Best Practices General Principles Readability counts: Code is read more often than it’s written Consistency is key: Follow established patterns within the codebase Explicit is better than implicit: Make your intentions clear Simple is better than complex: Favor straightforward solutions Code LayoutIndentation Use 4 spaces per...
Docker: 银河麒麟操作系统 v10 中离线安装
银河麒麟操作系统 v10 中离线安装 Docker1. 查看系统版本12345678[root@localhost opt]# cat /etc/os-releaseNAME="Kylin Linux Advanced Server"VERSION="V10 (Lance)"ID="kylin"VERSION_ID="V10"PRETTY_NAME="Kylin Linux Advanced Server V10 (Lance)"ANSI_COLOR="0;31"[root@localhost opt]# 2. 查看Linux内核版本12345[root@localhost opt]# uname -r4.19.90-52.22.v2207.ky10.aarch64[root@localhost opt]# uname -aLinux localhost.localdomain 4.19.90-52.22.v2207.ky10.aarch64 #1 SMP...
JS中的正则表达式
JavaScript中的正则表达式常见形式1. 基本形式1/hello/ 2. 常见参数12345678// 忽略大小写/hello/i// 全局匹配/hello/g// 匹配任意字符/[+-\s]/ 2. 匹配数字: 指数表达式匹配1234567/[0-9]e[0-9]/// 匹配1次到多次/[0-9]+e[0-9]+/// 数字匹配简写形式, shorthands/\d+e\d+/ 3. 其他: TODO
English:句子成分
句子成分 含义 例句 备注 主语 句子中的 主语 就相当于是主角 the man 谓语 主语发出的动作 the man holds 宾语 主语发出动作的承受者/作用对象 the man holds a girl 定语 句子中修饰主语的,称为定语 the handsome man with a bell holds a girl 帅气,带着铃铛,修饰主语,是定语 状语 作修饰,说明地点,时间,原因,结果,条件,方式,方向,程度等 the handsome man with a bell holds a gril on the boat at dusk on the boat:标示地点, at dusk:标示时间 补语 对句子进行补充,使其意义完整 She let him alone 宾语补足语。 补语 分为 主语补足语 和 宾语补足语 。主语 的 补语,就是放在 主语 后面的 补足语 ,像我们常说的 表语 ,也是 主语的补语 表语 也称为主语的补语,表示主语的状态 the other man is a...
wireshark入门
一、 过滤器操作过滤器是Wireshark的核心功能,也是我们平时使用最多的一个功能。 Wireshark提供了两个过滤器:抓包过滤器 和 显示过滤器。两个过滤器的过滤思路不同。 抓包过滤器:重点在动作,需要的包我才抓,不需要的我就不抓。 显示过滤器:重点在数据的展示,包已经抓了,只是不显示出来。 1. 抓包过滤器抓包过滤器在抓包前使用,它的过滤有一个基本的语法格式:BPF语法格式。 1)BPF语法BPF(全称 Berkeley Packet Filter),中文叫伯克利封包过滤器,它有四个核心元素:类型、方向、协议 和 逻辑运算符。 类型Type:主机(host)、网段(net)、端口(port) 方向Dir:源地址(src)、目标地址(dst) 协议Proto:各种网络协议,比如:tcp、udp、http 逻辑运算符:与( && )、或( || )、非( !) 四个元素可以自由组合,比如: src host 192.168.31.1:抓取源IP为 192.168.31.1 的数据包 tcp || udp:抓取 TCP 或者 UDP...
正向代理VS反向代理
🛰️ 正向代理 vs 反向代理(通俗理解)📌 概念对比表 项目 正向代理 反向代理 谁发起使用? 客户端(用户自己配置) 服务端(自动代理到后端) 被隐藏的是谁? 客户端 后端服务器 应用场景 科学上网、绕过墙 负载均衡、隐藏真实后端 示例 VPN、HTTP代理 Nginx、Apache 反向代理 用户访问的是什么 代理服务器 代理服务器 代理服务器转发给 目标网站 实际后端服务(如 Flask) 🎯 正向代理(Forward Proxy) 帮你访问你访问不到的网站 sequenceDiagram participant 用户 participant 代理服务器 participant 谷歌 用户->>代理服务器: 我要访问 Google 代理服务器->>谷歌: 用户请求(代发) 谷歌-->>代理服务器: 响应内容 代理服务器-->>用户: 返回数据 🔍 特点 客户端配置代理 代理“伪装”你去访问外部 被服务端看到的是“代理”,不是你 🛠...