# 环境搭建
# 背景
JavaScript 是最流行的编程语言之一,它不仅可以用于前端开发,也适用于后端开发(Node.js)。JavaScript 同样也可用于移动领域和桌面端应用,甚至你在嵌入式设备以及物联网设备都能使用它。正如你看到的,到处都有 JavaScript 的身影。——《学习 JavaScript 数据结构与算法》 (opens new window)
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。——百度百科《数据结构》 (opens new window)
数据的逻辑结构和物理结构是数据结构的两个密切相关的方面,同一逻辑结构可以对应不同的存储结构。算法的设计取决于数据的逻辑结构,而算法的实现依赖于指定的存储结构。——百度百科《数据结构》 (opens new window)
# 数据结构的简单分类
按照数据的逻辑结构可分为线性结构和非线性结构。稍微复杂一点可分为集合、线性结构、树形结构、图形结构、其他结构。
1.集合:元素之间除了“同属一个集合” 的相互关系外,别无其他关系。
2.线性结构:元素存在一对一的相互关系(元素有唯一的前驱和后继)。
3.树形结构:元素存在一对多的相互关系。
4.图形结构:元素存在多对多的相互关系。
5.其他结构:聚合数据类型等。
后面再展开说明这些具体类型下的数据类型,并且用代码实现他们的基本功能。
# 使用 TypeScript
TypeScript (opens new window)是一个开源的、渐进式包含类型的 JavaScript 超集,由微软创建并维护。创建它的目的是让开发者增强 JavaScript 的能力并应用的规模扩展变得更容易。它的主要功能之一是为 JavaScript 变量提供类型支持。在 JavaScript 中提供类型支持可以实现静态检查,从而更容易地重构代码和寻找 bug。最后,TypeScript (opens new window)会被编译为简单的 JavaScript 代码。——《学习 JavaScript 数据结构与算法》 (opens new window)
# 环境搭建详情
# 环境和开发工具
使用Node.js (opens new window)作为运行环境,Npm (opens new window)作为相关包管理工具,Git (opens new window)作为代码管理管局、VSCode (opens new window)作为代码编辑环境;具体教程可以看之前有写过Npm 的使用、Git 的使用、VSCode 的使用。
# 测试与调试工具
使用mocha (opens new window)和chai (opens new window)进行单元测试,用mochawesome (opens new window)和nyc (opens new window)生成测试报告(含覆盖率)。mocha 和 chai 的使用可以参考我之前写的“基于 mocha+chai 的单元测试”,当然也可以参考其他人的测试配置。
代码调试很重要,具体配置在项目的.vscode/launch.json 下查看。在使用 Mocha 跑 xxx.spec.ts 测试代码时,可以在代码上打断点,在代码上查看变量数值等等,和浏览器调试是一样的。
# 其他
并没有考虑要生成 js 文件,也没有考虑做压缩混淆处理,所以没有使用到打包编译工具;其他的一些配置具体可查看项目中的 package.json、tsconfig.json、tslint.json、.gitignore、launch.json 等。
项目初始化的相关命令是 git init、git clone xxx、npm init、npm install,还要叮嘱一句,项目报错的话可能是你的 npm 包有问题,在下载项目中依赖的 npm 包这样会很慢但是你要耐心等待,如果你要使用淘宝镜像可能会遇到“npm 包不同步”的问题,使用yarn (opens new window)也是一个不错的选择。
← 3.用react展示爬虫数据 2.栈 →