编程语言是开发者最亲密的伙伴,但大多数人终其职业生涯都在"使用"语言,从未真正"理解"语言。本期精选七个YouTube频道,带你从零构建词法分析器、手写编译器、实现虚拟机,彻底揭穿编程语言运作的全部秘密。
分类: 编程与开发(Round 2)
核心发现: 编程语言的实现并非遥不可及的黑魔法——从词法分析(Lexing)到语法解析(Parsing),从抽象语法树(AST)到字节码(Bytecode),从解释器到编译器,再到操作系统运行时环境,这条完整链路上有大量优质YouTube频道提供从理论到实践的完整指导。无论你是想深入理解日常使用的语言底层原理,还是有志于亲手打造一门属于自己的编程语言,这七个频道都将成为你不可或缺的学习资源。
与市面上大量"教你用框架"的教程频道不同,本次精选聚焦于语言本身的构建原理——这些频道教你的是"造锤子的锤子",是让你真正理解代码为何能运行的知识基石。
| 频道名称 | 订阅数 | 核心方向 | 难度 | 代表内容 |
|---|---|---|---|---|
| Computerphile | 260万+ | 语言设计理论 | ⭐⭐ | 编程语言设计、编译原理入门 |
| Neso Academy | 320万+ | 编译原理课程 | ⭐⭐ | 完整编译设计课程、OS原理 |
| Low Level (Ed) | 90万+ | 底层执行机制 | ⭐⭐⭐ | 逆向工程、汇编、代码执行原理 |
| Bisqwit | 14.6万+ | 编译器构建实战 | ⭐⭐⭐⭐ | 从零写编译器C++系列 |
| Tsoding | 12.4万+ | 语言实现直播 | ⭐⭐⭐⭐ | 函数式语言、Haskell、系统编程 |
| CodePulse | 数万+ | 解释器手写教程 | ⭐⭐⭐ | Monkey语言解释器完整实现 |
| Write Your Own OS | 4.3万+ | 操作系统内核 | ⭐⭐⭐⭐⭐ | 从引导扇区到多任务内核 |
频道地址: https://www.youtube.com/@Computerphile 订阅数: 260万+ 机构: 英国诺丁汉大学(University of Nottingham)
Computerphile 是由诺丁汉大学计算机科学系制作的科普频道,以其标志性的"白板讲解"风格闻名全球。在编程语言构建领域,该频道提供了多个极具价值的教学视频,其中 Dr. Laurie Tratt 主讲的《Creating Your Own Programming Language》堪称入门经典——他从一个空文件出发,在白板上逐步拆解一门语言的最小构成要素:词法规则、语法规则和语义规则。
核心洞察:
实用价值: 对于没有编译原理背景的开发者,Computerphile 提供了最低门槛的入门路径。每个视频10-20分钟,概念密度高但节奏友好,是通勤时间的理想学习素材。
适合人群: 对编程语言感兴趣但没有正式CS背景的开发者;想了解"语言为什么是这样设计的"的好奇者。
频道地址: https://www.youtube.com/@Bisqwit 订阅数: 约14.6万 频道签名: "Live programming as a form of art"
芬兰程序员 Bisqwit(真名 Joel Yliluoma)是 YouTube 上最具匠人精神的编程教育者之一。他的频道没有花哨的动画,没有快节奏的剪辑,只有实打实的代码编写过程和深入的技术讲解。他最著名的系列之一是《Creating a Compiler》——在这个系列中,他用 C++ 从零开始构建一个完整的编译器,覆盖词法分析、语法解析、语义分析、中间代码生成和目标代码输出的全部阶段。
核心洞察:
实用价值: Bisqwit 的编译器系列代码完全开源在 GitHub(github.com/bisqwit/compiler_series),可以逐行对照学习。对于想真正动手写编译器的开发者,这是YouTube上最完整、最诚实的实战记录。
适合人群: 有 C/C++ 基础的中高级开发者;对编译器内部实现有好奇心的工程师;复古计算爱好者。
频道地址: https://www.youtube.com/c/LowLevelLearning 订阅数: 90万+ 频道签名: "Everything is open source if you know reverse engineering"
Ed(网名 Low Level)是一位资深软件安全研究员,他的频道专注于"代码真正是如何运行的"。当你的编译器生成了机器码之后,CPU 是如何一步步执行这些指令的?内存是如何分配的?函数调用栈是如何工作的?这些问题的答案构成了编程语言实现的最底层。
他的代表作包括:用逆向工程方法分析真实恶意软件的执行流程、手把手教你阅读 x86 汇编、以及深入浅出的《How to ACTUALLY Learn Reverse Engineering in 2026》。
核心洞察:
实用价值: 该频道是连接"编译器前端"与"硬件执行"的桥梁。当你学了编译原理,却对生成的代码如何被CPU执行感到困惑时,Low Level 提供了答案。频道配套的 Low Level Academy(lowlevel.academy)还提供结构化课程。
适合人群: 安全工程师;想理解代码底层执行机制的开发者;准备学习逆向工程的程序员。
频道地址: https://www.youtube.com/@CodePulse 频道简介: "I upload videos for a wide range of topics including programming language development, operating system development, and more."
CodePulse 是YouTube上少数完全专注于"教你构建编程语言"的频道之一。其代表作是基于 Thorsten Ball 的《Writing An Interpreter in Go》一书的完整实现系列——从零用 Go 语言构建 Monkey 语言的解释器。
该系列涵盖了完整的解释器构建流程:Token 定义 → Lexer(词法分析器)→ Parser(语法解析器)→ AST(抽象语法树)→ Evaluator(求值器)→ 完整的解释器。每个阶段都有详细的视频讲解和代码实现。
核心洞察:
实用价值: 如果你想在周末就能动手写出一个能运行的解释器,CodePulse 是最佳起点。整个系列节奏合理,每集都有完整的代码增量,可以边看边写。
适合人群: Go语言学习者;第一次尝试写解释器的开发者;想理解脚本语言(Python、Ruby等)内部机制的人。
频道地址: https://www.youtube.com/tsoding 订阅数: 约12.4万 频道签名: "Recreational Programming"
Tsoding(真名 Alexey Kutepov,俄罗斯程序员)是YouTube上最独特的编程直播者之一。他的内容没有脚本、没有大纲——完全是在直播中即兴编写代码。在编程语言实现领域,他曾直播实现过多个小型语言和DSL,包括使用Haskell进行函数式编程探索、用C实现简单的语言虚拟机等。
Tsoding Daily 是他的日常开发日志频道,记录了更完整、更原始的编程过程。
核心洞察:
实用价值: Tsoding 的直播回放是学习"如何思考编程问题"的最佳材料。他不做后期剪辑,保留了所有的错误和修正过程,这对于学习者理解真实开发中的问题解决模式极为宝贵。
适合人群: 喜欢看直播编程的开发者;函数式编程爱好者;想体验"高级程序员如何思考"的学习者。
频道地址: https://www.youtube.com/@writeyourownoperatingsystem 订阅数: 约4.3万 频道签名: "Write your own Operating System"
编程语言需要一个运行环境——这个环境就是操作系统。Write Your Own Operating System 频道专注于从零开始构建一个完整的操作系统内核,从引导扇区(Bootloader)开始,逐步实现 GDT、IDT、内存管理、进程调度、文件系统等核心组件。
核心洞察:
实用价值: 编程语言的运行时系统(Runtime)与操作系统紧密耦合。理解OS原理是理解语言实现中内存管理、并发模型、异常处理等关键特性的前提。该频道提供了从动手实践中学习OS原理的独特路径。
适合人群: 想深入理解计算机系统全栈的硬核开发者;对操作系统内部实现有强烈好奇心的程序员;嵌入式系统工程师。
频道地址: https://www.youtube.com/@nesoacademy 订阅数: 约320万 机构: Neso Academy 教育平台
Neso Academy 是YouTube上最大的计算机科学教育频道之一,拥有超过320万订阅者。在编程语言构建领域,该频道提供了一套完整的《Compiler Design》播放列表,覆盖编译原理课程的全部核心主题:词法分析(Lexical Analysis)、语法分析(Syntax Analysis)、语义分析(Semantic Analysis)、中间代码生成、代码优化和目标代码生成。
此外,Neso Academy 还提供了完整的操作系统原理课程,从进程管理到内存管理再到文件系统,为理解编程语言的运行环境提供了扎实的理论基础。
核心洞察:
实用价值: 如果你需要系统学习编译原理(无论是为了面试、考研还是自我提升),Neso Academy 提供了YouTube上最完整的免费课程。视频带有详细的板书和例题讲解,适合按顺序学习。
适合人群: CS专业学生(特别是编译原理课程学习者);备考GATE等考试的学生;需要系统补充编译原理知识的自学者。
graph TB
subgraph "语言设计层"
A[Computerphile<br/>语言设计理论] --> B[形式语言与文法]
B --> C[正则表达式与CFG]
end
subgraph "编译构建层"
D[Neso Academy<br/>编译原理系统课] --> E[词法分析 Lexing]
E --> F[语法分析 Parsing]
F --> G[语义分析与中间代码]
H[CodePulse<br/>解释器实战] --> I[Lexer实现]
I --> J[Parser实现]
J --> K[AST求值器]
L[Bisqwit<br/>编译器实战] --> M[完整编译管道]
M --> N[目标代码生成]
end
subgraph "语言实现层"
O[Tsoding<br/>语言实现直播] --> P[函数式语言实现]
P --> Q[类型系统设计]
end
subgraph "运行时层"
R[Low Level<br/>底层执行机制] --> S[汇编与机器码]
S --> T[逆向工程]
U[Write Your Own OS<br/>操作系统内核] --> V[内存管理]
V --> W[进程调度]
W --> X[系统调用接口]
end
G --> L
K --> R
N --> R
X --> R
Q --> H
style A fill:#e1f5fe
style D fill:#f3e5f5
style H fill:#e8f5e9
style L fill:#fff3e0
style O fill:#fce4ec
style R fill:#efebf5
style U fill:#e0f2f1
flowchart LR
Start[开始学习] --> Phase1[阶段一: 理论入门]
Phase1 --> C1[Computerphile<br/>语言设计概念]
C1 --> Phase2[阶段二: 系统学习]
Phase2 --> C2[Neso Academy<br/>编译原理完整课程]
C2 --> Phase3[阶段三: 动手实践]
Phase3 --> C3a[CodePulse<br/>手写解释器]
C3a --> C3b[Bisqwit<br/>手写编译器]
C3b --> C3c[Tsoding<br/>语言实现直播]
C3c --> Phase4[阶段四: 深入底层]
Phase4 --> C4a[Low Level<br/>代码执行机制]
C4a --> C4b[Write Your Own OS<br/>操作系统内核]
Phase4 --> Mastery[语言实现能力<br/>全面掌握]
style Start fill:#c8e6c9
style Mastery fill:#c8e6c9
对一线开发者的价值: 理解编程语言的构建原理,能让你在使用任何语言时都更有信心——你知道为什么某些语法设计成这样,为什么某些操作比其他操作更慢,为什么某些bug的根本原因在语言层面而非你的代码。这种"降维理解"是区分普通程序员和卓越程序员的关键之一。
推荐学习顺序: 1. 快速入门(1-2周): Computerphile 的语言设计相关视频,建立基础概念框架 2. 系统学习(4-8周): Neso Academy 的编译原理课程,掌握形式化工具 3. 动手实践(4-6周): CodePulse 的解释器系列,用Go写出一个能工作的解释器 4. 进阶实战(8-12周): Bisqwit 的编译器系列,理解完整的编译管道 5. 底层补全(持续): Low Level + Write Your Own OS,补齐从机器码到OS的全链路知识
工具推荐: - ANTLR — 解析器生成器,适合快速实验新语言语法 - LLVM — 编译器后端框架,可以将你的语言编译到任意平台 - Crafting Interpreters(Robert Nystrom 著)— 与上述频道互补的绝佳书籍
| 频道 | 方向 | 推荐理由 |
|---|---|---|
| Sebastian Lague | 编程冒险与算法可视化 | 极高质量的编程概念可视化,适合建立直觉 |
| ThePrimeagen | Vim与性能工程 | 从高级开发者视角讲解底层性能优化 |
| Philipz / LiveOverflow | 二进制分析与CTF | 安全视角的底层编程深入分析 |
| No Boilerplate | Rust系统编程 | 用极简风格讲解Rust的零成本抽象原理 |
| freeCodeCamp | 全面编程教育 | 包含完整的编译原理长视频课程(4-8小时) |
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
