hawtim.github.io
hawtim.github.io copied to clipboard
### 定义 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。 ### 场景 有一些对象我们往往只需要一个,比如 线程池,全局缓存,浏览器中的 window 对象。 ### 在 javascript 中的单例模式 单例模式更加适合传统的面向对象语言中的类。在 javascript 中生搬单例模式的概念并无意义。 js 中两种单例模式的体现,本质都是减少全局变量,因为全局变量也可以理解为一种单例 1. 使用命名空间 2. 使用闭包封装私有变量 ### 不透明的/标准的单例模式 ```js class Singleton { // 静态私有成员变量...
## 前言 在学习 javascript 设计模式之前,可以先了解一下面向对象编程的一些基础概念 #41 ,帮助更好的理解设计模式。 ## 介绍 涉及 23 种设计模式的 JavaScript ES6 版本 介绍,示例,场景,优缺点。  ## 目录 #43 行为型模式-命令模式 #44 创建型模式-单例模式 #45 行为型模式-策略模式 ...
### 定义 定义一系列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化 ### 目的 目的是将算法的使用和算法的实现分离开。 ### 组成 策略模式至少包含两个部分: 1. 第一部分是一组策略类,封装了具体的算法,负责具体的计算过程。 2. 第二个部分是环境类 context,接受客户的请求,随后把请求委托给某一个策略类。 ### 一个计算奖金的例子 我们首先来看基于传统面向对象语言的模仿,各个类的职责体现得更加鲜明。 ```js class performanceS { calculate(salary) { return salary * 4 } } class...
命令模式是一种行为型模式。把对象之间的请求封装在命令对象中,将命令的调用者和命令的接收者完全解耦。 ### 行为 当调用命令的 `execute` 方法时,不同的命令会做不同的事情,从而阐释不同的执行结果,此外还有 undo 和 redo 等操作。 ### 电视遥控器例子 我们直接从代码入手,依次注释 命令的接收者、命令对象、命令的调用者 ```js document.write(` execute undo `) // 命令的接收者 let Tv = { open() { console.log('open the tv')...
go 语言速成课
视频地址:[go tutorial ](https://www.youtube.com/watch?v=C8LgvuEBraI) ```go package main // 导入所需要的依赖包 import ( "fmt" "errors" "math" ) // 必须有的 main 函数 func main() { // 变量定义 // x := 5 // y :=...
## 前言 最近学了 JavaScript 相关的设计模式,书名[《JavaScript设计模式与开发实践》](https://weread.qq.com/web/reader/6bf3215071a123016bf0b74kc81322c012c81e728d9d180),为加深对 OOP 和设计模式的理解,分成三个部分来理解 JavaScript 的面向对象设计。 ## 面向对象的 JavaScript (OOJS) 面向对象三大特性: - 封装 - 继承 - 多态 ## 封装 「封装」 把客观事物封装成抽象的类,隐藏属性和方法,仅对外公开接口。 ### 私有属性和方法 只能在构造函数内访问不能被外部所访问(在构造函数内使用 var 声明的属性) ###...
[《认知红利》](https://weread.qq.com/web/reader/58632d307190b91e5869c4bkc81322c012c81e728d9d180)是笔者最近花了一些时间精读的一本书,书中有很多概念,但是概念并不十分抽象,书中会从现象分析入手,引导你思考更深,更高层次的问题,读起来不会枯燥,反而经常让我产生“噢,原来是这样的!”的感叹。有些看过类似的书的读者可能会说是把一些思维方式的书籍的观点整理起来讲。但我想讲这本书把这些概念和观点串联得真的很好,值得一看。 读书笔记我做了一个脑图,有点混乱,摘要我认为非常重要的 NLP 的概念。前面部分的内容就用h3标题带过了。 ### 意识到自己拥有最宝贵的财富是“注意力” ### 善用每一份时间去做一个“时间商人” ### 学会围绕自己的“天赋”打造核心竞争力 ### 使用“复利的思维”让财富和自己快速成长 ### 通过“去角色化”看到那个陌生而又真实的自己 ### 从“理解层次”的概念里发现,原来问题还可以从一个更高的维度快速地解决 ## NLP理解层次 ### 环境 - 都是环境的错 ### 行动 - 我还不够努力 ### 能力 - 方法总比问题多!...
## HTTPS 全过程 分两个阶段  ## 中间人攻击 在服务端和客户端之间存在一个中间人角色 
