你将获得
-
夯实基础,深入学习操作系统、网络、V8 知识;
-
全面提升,掌握基础原理与核心模块的实现;
-
动手实操,从 0 实现一个简单的 JS 运行时;
-
触类旁通,能独立研究源码,解决业务问题。
作者简介
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 时,可能会遇到很多问题。
-
项目逻辑复杂,代码庞大,不知道如何看或者看哪些代码。比如:看完 JS 模块的源码后,不知道如何进一步阅读 C、C++ 层的代码。
-
Node.js 涉及知识比较广,很多地方看不懂,比如会涉及 V8、事件驱动、非阻塞 IO、进程间通信等知识。
-
无法建立完整的知识体系,实际工作中运用不好。比如:知道文件操作是基于线程池的,但是不知道具体原理;知道 net 模块如何使用,但是不知道它是如何基于事件驱动模块工作的。
基于此,本小册将围绕以下 3 条原则来设计。
-
庖丁解牛:小册梳理了 Node.js 核心的内容,按照架构、基础、核心模块循序渐进的讲解,让大家对 Node.js 有一个全面、清晰、深入的认识。
-
纸上得来终觉浅,绝知此事要躬行:小册除了讲解 Node.js 的实现原理,还会提供一些实践的代码,最后还会教大家实现一个简单的 JS 运行时,来加深认识。
-
授人以渔:小册还会讲到很多底层通用的基础知识,如:V8、操作系统、网络等等。学无止境,希望你通过小册学会的不仅仅是 Node.js 本身,更是独立阅读源码,深入探索的能力。
具体的课程内容如下:
适宜人群
-
能看懂 C、C++ 代码,了解常用的语法;
-
了解 Node.js 的一些基础和核心概念,常用模块和 API 的使用;
-
希望深入理解 Node.js 或 JS 运行时的底层原理,更好地解决工作中碰到的问题;
-
希望为 Node.js 社区做贡献,让自己的代码被成千上万的开发者使用。
购买须知
- 本小册为图文形式内容服务,购买成功概不退款;
- 共 22 节,自上线起每周更新 2 节,预计 1 月 30 日前完成更新;
- 购买用户可永久阅读小册,可进入小册微信群,与作者互动;
- 掘金小册版权归北京北比信息技术有限公司所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表,违者将依法追究责任;
- 在掘金小册阅读过程中,如有任何问题,请邮件联系 xiaoce@xitu.io