深入剖析 Node.js 底层原理- 掘金小册课程推荐/优惠

深入剖析 Node.js 底层原理--掘金小册课程推荐/优惠

从源码角度解读 Node.js 底层设计,并实现一个简单的 JS 运行时
theanarkh
24讲 | 1637人已学习
优惠价¥39.9
官网购买

版权声明

本站非掘金小册官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。

课程详情

课程介绍

你将获得

  1. 夯实基础,深入学习操作系统、网络、V8 知识;

  2. 全面提升,掌握基础原理与核心模块的实现;

  3. 动手实操,从 0 实现一个简单的 JS 运行时;

  4. 触类旁通,能独立研究源码,解决业务问题。

作者简介

theanarkh,字节跳动 Node.js 工程师,目前主要负责 Node.js APM 方向的工作,曾在腾讯云 / IMWeb / WebInfra 等团队工作。Node.js Collaborator 和 Libuv Contributor,业余写过玩具 JS 运行时 No.js 和 Deer,个人公众号《编程杂技》。

小册介绍

Node.js 从诞生到现在,已经走过了十几个年头。随着全栈工程师、微服务、前后端架构分离的火热,从开发工具到 Web 应用,从客户端到服务端,越来越多的使用场景中都能看到 Node.js 的身影。与此同时,各个公司对 Node.js 开发者的要求也越来越高。比如会要求我们对进程 / 线程、网络、流和异步等概念有深刻理解,精通 Node.js,熟悉 TCP、HTTP 等网络协议,学习能力和解决问题的能力强。

作为一名 Node.js 工程师,如果我们只是面向文档 黑盒 编程,显然已经不能满足这些要求了。文档只是 Node.js 的一部分,想要提升自己的核心竞争力,我们一定要深入理解 Node.js 底层原理。理解底层原理不仅可以帮助我们解决日常工作中碰到的各种问题,更好地完成工作中各种需求,还可以帮助我们更快地学习其他技术,因为技术都是相通的。

但是,大部分同学在阅读源码或深入学习 Node.js 时,可能会遇到很多问题。

  1. 项目逻辑复杂,代码庞大,不知道如何看或者看哪些代码。比如:看完 JS 模块的源码后,不知道如何进一步阅读 C、C++ 层的代码。

  2. Node.js 涉及知识比较广,很多地方看不懂,比如会涉及 V8、事件驱动、非阻塞 IO、进程间通信等知识。

  3. 无法建立完整的知识体系,实际工作中运用不好。比如:知道文件操作是基于线程池的,但是不知道具体原理;知道 net 模块如何使用,但是不知道它是如何基于事件驱动模块工作的。

基于此,本小册将围绕以下 3 条原则来设计。

  1. 庖丁解牛:小册梳理了 Node.js 核心的内容,按照架构、基础、核心模块循序渐进的讲解,让大家对 Node.js 有一个全面、清晰、深入的认识。

  2. 纸上得来终觉浅,绝知此事要躬行:小册除了讲解 Node.js 的实现原理,还会提供一些实践的代码,最后还会教大家实现一个简单的 JS 运行时,来加深认识。

  3. 授人以渔:小册还会讲到很多底层通用的基础知识,如:V8、操作系统、网络等等。学无止境,希望你通过小册学会的不仅仅是 Node.js 本身,更是独立阅读源码,深入探索的能力

具体的课程内容如下:

适宜人群

  • 能看懂 C、C++ 代码,了解常用的语法;

  • 了解 Node.js 的一些基础和核心概念,常用模块和 API 的使用;

  • 希望深入理解 Node.js 或 JS 运行时的底层原理,更好地解决工作中碰到的问题;

  • 希望为 Node.js 社区做贡献,让自己的代码被成千上万的开发者使用。

课程目录(更新中)

  • Node.js 基础架构
  • Libuv 数据结构和通用逻辑
  • Libuv 的功能是如何引入 JS 的
  • Libuv 的流机制
  • Libuv 事件循环
  • Libuv 线程池和线程间通信
  • Node.js 中 JS 和 C++对象的内存管理机制
  • Node.js 的启动过程
  • 多线程和线程间通信的实现
  • 模块加载的实现
  • TCP 基础和客户端 / 服务器的实现
  • 详解文件模块的同步、异步、Promise 化、流式操作 API
  • UDP 客户端 / 服务器的实现和特性
  • 从 Libuv 和 cares 的角度,理解 DNS 模块的实现
  • Unix 域和文件描述符传递
  • 服务器技术的演进和 Cluster 模块的实现
  • 进程和进程间通信的实现
  • Node.js 中 HTTP 模块的实现和使用
  • 总结:阅读源码的意义
  • 从 0 到 1 实现一个简单的 JS 运行时
  • setImmediate、nextTick 和 setTimeout 的实现
  • 开篇:深入剖析 Node.js 底层原理
  • TCP 的数据通信的实现和特性
  • Node.js 中两套文件监听机制的实现

作者介绍

Node.js 爱好者

推荐

Flutter 状态管理: 源码探索与实战 - 掘金小册课程推荐/分享/优惠/折扣
Flutter 状态管理: 源码探索与实战
从实践探索到源码级分析,全面通关 Flutter 状态管理。
张风捷特烈
541人已学习
优惠价¥9.9
官网购买
基于 Vite 的 SSG 框架开发实战 - 掘金小册课程推荐/分享/优惠/折扣
基于 Vite 的 SSG 框架开发实战
从 0 到 1 实现类 VitePress 框架,手把手带你造轮子
神三元
1041人已学习
优惠价¥199
官网购买
IntelliJ  IDE 插件开发指南 - 掘金小册课程推荐/分享/优惠/折扣
IntelliJ IDE 插件开发指南
搭建+开发+售卖,你的第一本商业化 IntelliJ IDE 插件开发 CookBook
洪进锋
1023人已学习
优惠价¥29.9
官网购买
深入浅出 DDD - 掘金小册课程推荐/分享/优惠/折扣
深入浅出 DDD
从基础概念到落地实践,带你领略自顶向下的业务驱动架构,击碎老旧代码、复杂业务维护困难的噩梦。
柏炎
2267人已学习
优惠价¥29.9
官网购买
玩转 React Hooks - 掘金小册课程推荐/分享/优惠/折扣
玩转 React Hooks
系统学习 Hooks,串联整个 React 模块,实现技术进阶
小杜杜
2623人已学习
优惠价¥29.9
官网购买
技术人求职指南 - 掘金小册课程推荐/分享/优惠/折扣
技术人求职指南
从准备求职到拿下心动 Offer,一本职场的全方位攻略
竹子爱熊猫
1286人已学习
优惠价¥49.9
官网购买