读过一本好书,像交了一个益友。——臧克家
Node.js 技术栈 是由作者 “五月君” 于 2019 年 4 月梳理之后最早开源于 Github,同时注册了微信公众号「Nodejs技术栈」。本文档包含了作者从事 Node.js Developer 以来的学习历程,旨在为大家提供一个较详细的学习教程,侧重点更倾向于 Node.js 服务端所涉及的技术栈。
也致力于为大家分享最具有价值的 Node.js 相关技术干货,包含 Node.js 基础知识(JavaScript、ES6/ES7/ES8...、TypeScript)、Node.js 核心模块、主流框架实践、缓存、数据库、消息中间件、DevOps、HTTP 协议以及 Node.js 在微服务、分布式领域下的应用分享等。
思维导图
说明:大致方向不会变,中间细节部分之后可能会修改,欢迎关注公众号「Nodejs技术栈」回复 “思维导图” 查看最新版学习指南
目录大纲
JavaScript
基础
This
函数
对象
原型
正则
ES系列
sync/await
Object.values()
Object.entries()
includes
指数操作符
Let、Const 变量声明
数据类型功能扩展
Set、Map 集合
解构赋值
箭头函数
Promise
Symbol
Decorators
Generator
ES6
ES7
ES8
Node.js 基础
Node.js 初识
Node.js 发展史
开发环境搭建
NPM 包管理器
构建第一个 Hello World 应用程序
初识 Node.js 模块
回调函数/异步编程
Node.js 编码风格指南
Koa.js 入门
Node.js 中应用 MongoDB
Node.js 中应用 Redis
基于 Koa.js 的简单 CRUD
统一异常处理
单元测试
PM2 部署
Node.js 应用场景
Node.js 核心模块
Module — 模块
HTTP / HTTPS / HTTP2
Net — 网络
Event — 事件
Stream — 流
Buffer — 缓冲区
Crypto — 加密
FS — 文件
Timer — 定时器
Node.js 进阶
Memory 内存管理
V8 虚拟机
I/O 模型
EventLoop 事件轮询
Threads&Process 线程和进程
Testing 测试
Schedule 定时任务
Template 模版引擎
Cache 缓存
性能调优
最佳实战
Node.js 框架
Express.js
Koa.js
Egg.js
Nest.js
Midway.js
Meteor.js
数据库
Azure CosmosDB
Amazon DynamoDB
ElasticSearch
Solr
Sphinx
MySql
PostgreSQL
SQL Server
Redis
MongoDB
CouchDB
NoSql
关系型
搜索引擎
云数据库
HTTP
HTTP 协议发展史
5 层网络模型
HTTP 三次握手/四次挥手
URI/URL/URN
跨域的形成及解决方案
缓存头 Cache-Control
Cookie 与 Session
HTTP 长链接
HTTP2 协议实践
微服务
可能出现的问题
熔断
限流
服务降级
Consul
Zookper
ResultFul API
GraphQL
HAL 基于ResultFul协议的提升
RPC
消息队列
认识微服务
数据通信
服务注册/发现
柔性可用/容错
消息中间价
RabbitMQ
RocketMQ
Kafka
ActiveMQ
分布式
认识分布式
分布式事务
分布式锁
分布式限流
分布式订单号生产策略
分布式系统校验
DevOps
PM2 生产环境部署
Docker
Jenkins 持续集成
SonarQube 代码质量评测分析
Jumpserver 开源堡垒机
安全
CSRF
XSS
越权
Cookies 安全策略
HTTP/HTTPS 传输安全
SQL 注入
中间人攻击
OAuth 2.0
工具
Git 版本控制
VSCode 编辑器
设计模式
单例模式
工厂模式
装饰器模式
代理模式
适配器模式
观察者模式
数据结构
Queue
Set
List
Map
Heap - 堆
Stack - 栈
Graph - 图
二叉树
红黑树
十大排序
SOLID 五大原则
单一职责原则
开放封闭原则
里式替换原则
接口分离原则
依赖倒置原则
任重而道远!
资源
本项目开源于 Github: https://github.com/Q-Angelo/Nodejs-Roadmap,同时也会在微信公众号「Nodejs技术栈」进行同步,欢迎关注!如需进群交流的可先关注微信公众号,后台回复“加群”,即可加入「Nodejs技术栈交流群」!
以上部分内容已经完成的可以在 Github 查看,后续也会同步到微信公众号,更多内容还需不断完善,我会朝着这个大纲目标走,如果您有不错的文章欢迎投稿,当然也欢迎分享本公众号的文章让更多的同学能够看到。转载和投稿前请先在公众号后台点击 “阅读更多” -> “转载投稿”查看相关须知内容。
本文分享自微信公众号 - 胡哥有话说(hugeyouhuashuo)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。