装饰者设计模式在业务中的实践 ​ 装饰者设计模式在顾名思义就是在原来逻辑上进行一层装饰逻辑,从而实现不通过if-else实现对优雅的对基础逻辑的扩充。在JDK源码中的InputStream中就有使用了装饰者的设计模式。从而实现通过BufferedInputStream、DataInputStream等其他修饰InputStream,增加了缓存读取、类型读取等功能,相当于InputStream之上加了很多修饰功能,在所以它是一个装饰器模式。 ​ 这里inputStream作为一个被装饰的类,然后BufferedInp…

2022年1月15日 0条评论 2点热度 阅读全文

  概念 零概率问题:在计算事件的概率时,如果某个事件在观察样本库(训练集)中没有出现过,会导致该事件的概率结果是  $0$ 。这是不合理的,不能因为一个事件没有观察到,就被认为该事件一定不可能发生(即该事件的概率为 $0$ )。   拉普拉斯平滑(Laplacian smoothing) 是为了解决零概率的问题。 法国数学家 拉普拉斯 最早提出用 加 $1$  的方法,估计没有出现过的现象的概率。 理论假设:假定训练样本很大时,每个分量 $x$ 的计数加  $1$  造成的…

2022年1月15日 0条评论 7点热度 阅读全文

Cache一致性协议 在说伪共享问题之前,有必要聊一聊什么是Cache一致性协议 局部性原理 时间局部性:如果一个信息项正在被访问,那么在近期它很可能还会被再次访问 比如循环、方法的反复调用等 空间局部性:如果一个存储器的位置被引用,那么将来他附近的位置也会被引用 比如顺序结构、数组 Cache的作用 CPU在摩尔定律的指导下以每18个月翻一番的速度在发展,然而内存和硬盘的发展速度远远不及CPU。为了解决这个问题,CPU厂商在CPU中内置了少量的高速缓存Cache,以解决访存速度和CPU运算速度之间不匹配的问题 带…

2022年1月8日 0条评论 9点热度 阅读全文

JavaScript的执行过程 前言 编写一段JavaScript代码,它是如何执行的呢?简单来说,JS引擎在执行JavaScript代码的过程中需要先解析再执行。那么在解析阶段JS引擎又会进行哪些操作,接下来就一起来了解一下JavaScript在执行过程中的详细过程,包括执行上下文、GO、AO、VO和VE等概念的理解。 1.初始化全局对象 首先,JS引擎会在执行代码之前,也就是解析代码时,会在我们的堆内存创建一个全局对象:Global Object(简称GO),观察以下代码,在全局中定义了几个变量: 示例代码: …

2022年1月7日 0条评论 12点热度 阅读全文

需求说明:制作一个马赛克图片,将几万张图片进行合成,每个马赛克格子的尺寸为15x15。 完整源码在文末有说明,需要的可以去下载哈。 【阅读全文】 看一下生成的马赛克图片的效果: 需要使用到的python模块包如下: import cv2 # pip install opencv-python # 图像处理库 import glob # 导入文件处理库 import argparse # 命令行解析库 import numpy as np # 数据处理库 from tqdm import tqdm # 导入进度条库 …

2022年1月6日 0条评论 13点热度 阅读全文

常见的报警方式有:邮件,电话,短信,微信。 短信和电话,通常是收费的(若你有不收费的,可以评论分享一下),而邮件又不是那么及时,因此最后我选择微信通知。 这里说的微信,是企业微信,而我之前注册过个体户的执照,因此可以很轻松就可以注册自己的企业微信。 很多人学习蟒蛇,不知道从何学起。 很多人学习python,掌握了基本语法之后,不知道在哪里寻找案例上手。 很多已经可能案例的人,却不知道如何去学习更多高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费获取视频教程,电子书,以及课程的源代码! QQ群:10…

2022年1月5日 0条评论 16点热度 阅读全文

# 分析包# 分析post请求中参数# 使用python模拟lts、sign、salt参数运算# 执行结果> > 1、按F12对网页进行分析,填写内容后自动翻译的功能一般是通过ajax实现的,所以可以有目的的对xhr包进行筛选,如果不知道这个点也可以一个个包进行查看分析,找包里面有需要翻译的内容和翻译结果         > > 2、分析发送请求中参数的参数,发送两次请求也就是翻译两次,对两次的包进行分析,可以发现每次发送的请求中salt、sign、l…

2022年1月1日 0条评论 13点热度 阅读全文

系列导航及源代码 使用.NET 6开发TodoList应用文章索引 需求 .NET 6 Web API应用使用最多的场景是作为后端微服务应用,在实际的项目中,我们一般都是通过将应用程序打包成docker镜像进行发布,以便更好地进行部署,包括基于Kubernetes平台的微服务项目部署。 一般来说作为微服务部署的应用程序,都是位于某个虚拟子网下的,也就是说它们不直接暴露给外部用户,请求都是走的内部网络,所以很少会有HTTPS的需求,但是作为演示,在本文中我们还是会介绍如何实现HTTPS访问docker中的应用程序。 …

2022年1月1日 0条评论 4点热度 阅读全文

一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3.8 Pycharm 2021.2 三.涉及知识点 Python基础语法 基本的数据类型与结构 基本的逻辑控制语句 实战小项目 四.接下来我们开始敲代码 我们一步步来完成学生信息管理系统 第一步:制作学生信息管理系统的界面 程序启动,显示信息管理系统欢迎界面,并显示功能菜单 (print) 用户用数字选择不同的功能 (i…

2021年12月31日 0条评论 42点热度 阅读全文

首先区分可迭代对象(Iterable)、迭代器(Iterator) 可迭代对象:包含__iter__方法的对象为可迭代对象,如List、Tuple、Dictionary 迭代器:包含__iter__、__next__方法 可迭代对象属于半成品 --> 而迭代器属于直接食用产品 以下均在for 循环遍历中即是根据 iter 方法判断该对象是否是可迭代序列 1. 定义一个可迭代类: class Iterat(): def __init__(self): self.arr = [1,2,3] self.loc = …

2021年12月30日 0条评论 19点热度 阅读全文