aadonkeyz的博客

程序员的学习笔记


  • 首页

  • 分类14

  • 归档85

  • 搜索

工厂模式

发表于 2019-07-18 | 更新于 2022-01-09 | 分类于 Design Pattern

基础概念 工厂模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。适用性:当一个类不知道它所必须创建的对象的类的时候。当一个类希望由它的子类来指定它所创建的对象的时候。当类创建对象的职责委托给多个帮助子类中的某一个,并且希望将哪一个帮助子类是代理者这一信息局部化的时 ...

阅读全文 »

HTTPS

发表于 2019-07-18 | 更新于 2023-01-08 | 分类于 Network

数字加密 密码:对文本进行编码,使偷窥者无法识别的算法。密钥:改变密码行为的数字化参数。对称密钥加密系统:编/解码使用相同的密钥。非对称密钥加密系统:编/解码使用不同的密钥。数字签名:用来验证报文未被伪造或篡改的校验和。数字证书:由一个可信的组织验证和签发的识别信息。 ...

阅读全文 »

单例模式

发表于 2019-07-17 | 更新于 2022-01-09 | 分类于 Design Pattern

基础概念 单例模式:保证一个类仅有一个实例,并提供一个访问该实例的全局访问点。适用性:当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。参与者: - Singleton - ...

阅读全文 »

HTTP基础

发表于 2019-07-15 | 更新于 2023-01-08 | 分类于 Network

HTTP 报文结构 实体是要进行传输的数据。实体首部字段存在于报文首部字段之中。实体主体和报文主体在起始时是相同的。如果实体主体过大,需要进行分块传输,会导致报文主体中包含多个实体主体。 HTTP 方法GETGET 是最常用的方法。通常用于向服务器请 ...

阅读全文 »

装饰者模式

发表于 2019-07-14 | 更新于 2022-01-09 | 分类于 Design Pattern

基础概念 装饰者模式:动态地给一个对象添加一些额外的职责。适用性:在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。处理那些可撤销的职责。当不能采用生成子类的方法进行扩充时。一种情况是,可能有大量独立的扩展,为支持每一种组合将产生大量的子类,使得子类数目呈爆炸 ...

阅读全文 »

图论算法

发表于 2019-07-13 | 更新于 2021-11-28 | 分类于 Data Structure and Algorithm

拓扑排序拓扑排序是对有向无圈图的顶点的一种排序,使得如果存在一条从 $v_i$ 到 $v_j$ 的路径,那么在排序中 $v_j$ 就在 $v_i$ 的之后出现。它的原理比较简单,直接用下面的图片进行展示了。图片来源与拓扑排序(Topological Sorting) 拓扑 ...

阅读全文 »

观察者模式and发布订阅模式

发表于 2019-07-12 | 更新于 2022-01-09 | 分类于 Design Pattern

按照书中的理解,发布订阅模式属于观察者模式。但是现在常常将二者区分开来了,本文首先介绍观察者模式,然后在过程中介绍发布订阅模式。 基础概念 观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于 ...

阅读全文 »

前端路由的实现

发表于 2019-07-12 | 更新于 2021-03-18 | 分类于 FE

前端路由的实现有两种方式:hash 和 history。 hash 此时浏览器显示的 URL 为 https://aadonkeyz.com/posts/eb815672/。执行 location.hash = '#hash' 后,生成一条新的浏览记录,其 U ...

阅读全文 »

HTTP Caching

发表于 2019-07-11 | 更新于 2021-01-02 | 分类于 Network

我是 MDN 的搬运工。

阅读全文 »

散列(哈希)表

发表于 2019-07-09 | 更新于 2021-11-28 | 分类于 Data Structure and Algorithm

基本概念散列表是一种用于以常数平均时间执行插入、删除和查找的技术。但是,那些需要元素间任何序信息的树操作在这里将不会得到有效的支持(如findMin、findMax)。理想的散列表只不过是一个具有固定大小的数组。假定散列表长度为n,当向散列表中插入数据时,将该数据的关键字(key)作为输入传递给一个 ...

阅读全文 »
1…345…9

aadonkeyz

菜鸟程序员成长路

85 日志
14 分类
GitHub
© 2019 – 2024 aadonkeyz
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Mist v7.0.0
0%