摘要:
需求使我心累、BUG使我流泪 阅读全文
摘要:
vscode-nvim 基本介绍 我之前尝试在vscode中使用vsocde-vim插件来进行开发,但是我无法忍受它的卡顿,因此我将目光放在了vscode-nvim插件上: 它与vscode-vim插件还是有非常多的区别的,vscode-vim只是一个vim模拟器,好处是配置简单方便,不需要掌握过多 阅读全文
摘要:
基础知识 vscode-vim vscode-vim是一款vim模拟器,它将vim的大部分功能都集成在了vscode中,你可以将它理解为一个嵌套在vscode中的vim。 由于该vim是被模拟的的非真实vim,所以原生vim中有些功能它并不支持,如宏录制功能,但这依然不妨碍vscode-vim插件的 阅读全文
摘要:
前言概述 vim由于其丰富的扩展性、出色的跨平台性、高效率的操作性深受一大批粉丝的追捧,甚至就连vim和emacs之间孰优孰劣的话题都能被引起一场编辑器之间的圣战,足以见vim是多么的优秀。 vim的灵魂在于高定制性,高可玩性,一个原生的vim没有任何插件加持的情况下还是非常难以上手的,但是我们可以 阅读全文
摘要:
VIM 基本介绍 vim诞生已有20多年,它常被人称之为编辑器之神,vim的操作理念可以说是独具一格而又出类拔萃,使用vim能极大的提升文本处理效率,因此熟练掌握vim应该是每个程序员都应该做到的事情。 vim目前有3个较常见的版本: vi:只保留了一些基础功能,在绝大多数Linux发行版中都内置了 阅读全文
摘要:
事件循环 基本介绍 JavaScript是一门单线程的编程语言,所以没有真正意义上的并行特性。 为了协调事件处理、页面交互、脚本调用、UI渲染、网络请求等行为对主线程造成的影响,事件循环(event loop)方案应运而生。 事件循环说白了就是一个不断的在等待任务、执行任务的方案。 在JavaScr 阅读全文
摘要:
基本介绍 XmlHttpRequest XmlHttpRequest是JavaScript中原生的,历史悠久的一种发送网络请求的方案。 基本上所有前端框架对于网络请求的部分都是基于它来完成的。 在本章节中我们将了解它的基本用法,并且会实现一个与jQuery.ajax功能百分之九十相似的网络请求组件。 阅读全文
摘要:
前言 本章节将继续围绕threading模块讲解,基本上是纯理论偏多。 对于日常开发者来讲很少会使用到本章节的内容,但是对框架作者等是必备知识,同时也是高频的面试常见问题。 官方文档 线程安全 线程安全是多线程或多进程编程中的一个概念,在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同 阅读全文
摘要:
threading模块 Python中提供了threading模块来实现线程并发编程,官方文档如下: 官方文档 添加子线程 实例化Thread类 使用该方式新增子线程任务是比较常见的,也是推荐使用的。 简单的代码示例如下,创建3个子线程并向其添加任务,然后运行并打印它们的线程ID和线程名字: imp 阅读全文
摘要:
Hash Table 散列表(hash table)也被称为哈希表,它是一种根据键(key)来存储值(value)的特殊线性结构。 常用于迅速的无序单点查找,其查找速度可达到常数级别的O(1)。 散列表数据存储的具体思路如下: 每个value在放入数组存储之前会先对key进行计算 根据key计算出一 阅读全文