名师简介:
宫文学,北京原点代码 CEO,连续创业者,2016 年入选厦门市第九批“双百计划”领军型创业人才。他是国内最早做 BPM(流程管理平台)和 BI 平台(大数据平台)的创业者之一,之后也做过电子表单和快速开发平台,这些经历都与编译技术密不可分。
我喜欢做平台性的软件,而编译技术就是产品取得优势的关键。我是国内最早一拨做 BPM
的,也就是流程管理平台,也是最早一拨做 BI 平台的,现在流行叫大数据。当时我们只有
3 个人,用编译技术做了一些硬核的产品原型,跟联想集团签订了战略级合作协议。之后我
又做过电子表单和快速开发平台,而它们的核心就是编译技术。
目录:
极客时间-编译原理之美 41讲百度网盘下载
00丨开篇词 (1讲)
00开篇词丨为什么你要学习编译原理?.html
00开篇词丨为什么你要学习编译原理?.mp3
00开篇词丨为什么你要学习编译原理?.pdf
01丨实现一门脚本语言 · 原理篇 (13讲)
01丨理解代码:编译器的前端技术.html
01丨理解代码:编译器的前端技术.mp3
01丨理解代码:编译器的前端技术.pdf
02丨正则文法和有限自动机:纯手工打造词法分析器.html
02丨正则文法和有限自动机:纯手工打造词法分析器.mp3
02丨正则文法和有限自动机:纯手工打造词法分析器.pdf
03丨语法分析(一):纯手工打造公式计算器.html
03丨语法分析(一):纯手工打造公式计算器.mp3
03丨语法分析(一):纯手工打造公式计算器.pdf
04丨语法分析(二):解决二元表达式中的难点.html
04丨语法分析(二):解决二元表达式中的难点.mp3
04丨语法分析(二):解决二元表达式中的难点.pdf
05丨语法分析(三):实现一门简单的脚本语言.html
05丨语法分析(三):实现一门简单的脚本语言.mp3
05丨语法分析(三):实现一门简单的脚本语言.pdf
06丨编译器前端工具(一):用Antlr生成词法、语法分析器.html
06丨编译器前端工具(一):用Antlr生成词法、语法分析器.mp3
06丨编译器前端工具(一):用Antlr生成词法、语法分析器.pdf
07丨编译器前端工具(二):用Antlr重构脚本语言.html
07丨编译器前端工具(二):用Antlr重构脚本语言.mp3
07丨编译器前端工具(二):用Antlr重构脚本语言.pdf
08丨作用域和生存期:实现块作用域和函数.html
08丨作用域和生存期:实现块作用域和函数.mp3
08丨作用域和生存期:实现块作用域和函数.pdf
09丨面向对象:实现数据和方法的封装.html
09丨面向对象:实现数据和方法的封装.mp3
09丨面向对象:实现数据和方法的封装.pdf
10丨闭包:理解了原理,它就不反直觉了.html
10丨闭包:理解了原理,它就不反直觉了.m4a
10丨闭包:理解了原理,它就不反直觉了.pdf
11丨语义分析(上):如何建立一个完善的类型系统?.html
11丨语义分析(上):如何建立一个完善的类型系统?.m4a
11丨语义分析(上):如何建立一个完善的类型系统?.pdf
12丨语义分析(下):如何做上下文相关情况的处理?.html
12丨语义分析(下):如何做上下文相关情况的处理?.m4a
12丨语义分析(下):如何做上下文相关情况的处理?.pdf
13丨继承和多态:面向对象运行期的动态特性.html
13丨继承和多态:面向对象运行期的动态特性.m4a
13丨继承和多态:面向对象运行期的动态特性.pdf
02丨实现一门脚本语言 · 应用篇 (2讲)
14丨前端技术应用(一):如何透明地支持数据库分库分表?.html
14丨前端技术应用(一):如何透明地支持数据库分库分表?.m4a
14丨前端技术应用(一):如何透明地支持数据库分库分表?.pdf
15丨前端技术应用(二):如何设计一个报表工具?.html
15丨前端技术应用(二):如何设计一个报表工具?.m4a
15丨前端技术应用(二):如何设计一个报表工具?.pdf
03丨实现一门脚本语言 · 算法篇 (3讲)
16丨NFA和DFA:如何自己实现一个正则表达式工具?.html
16丨NFA和DFA:如何自己实现一个正则表达式工具?.m4a
16丨NFA和DFA:如何自己实现一个正则表达式工具?.pdf
17丨First和Follow集合:用LL算法推演一个实例.html
17丨First和Follow集合:用LL算法推演一个实例.m4a
17丨First和Follow集合:用LL算法推演一个实例.pdf
18丨移进和规约:用LR算法推演一个实例.html
18丨移进和规约:用LR算法推演一个实例.m4a
18丨移进和规约:用LR算法推演一个实例.pdf
04丨实现一门脚本语言 · 热点答疑与用户故事 (2讲)
19丨案例总结与热点问题答疑:对于左递归的语法,为什么我的推导不是左递归的?.html
19丨案例总结与热点问题答疑:对于左递归的语法,为什么我的推导不是左递归的?.m4a
19丨案例总结与热点问题答疑:对于左递归的语法,为什么我的推导不是左递归的?.pdf
用户故事丨因为热爱,所以坚持.html
用户故事丨因为热爱,所以坚持.pdf
05丨编译原理 · 期中考试周 (1讲)
期中考试丨来赴一场100分的约定吧!.html
期中考试丨来赴一场100分的约定吧!.m4a
期中考试丨来赴一场100分的约定吧!.pdf
06丨实现一门编译型语言 · 原理篇 (12讲)
20丨高效运行:编译器的后端技术.html
20丨高效运行:编译器的后端技术.m4a
20丨高效运行:编译器的后端技术.pdf
21丨运行时机制:突破现象看本质,透过语法看运行时.html
21丨运行时机制:突破现象看本质,透过语法看运行时.m4a
21丨运行时机制:突破现象看本质,透过语法看运行时.pdf
22丨生成汇编代码(一):汇编语言其实不难学.html
22丨生成汇编代码(一):汇编语言其实不难学.m4a
22丨生成汇编代码(一):汇编语言其实不难学.pdf
23丨生成汇编代码(二):把脚本编译成可执行文件.html
23丨生成汇编代码(二):把脚本编译成可执行文件.m4a
23丨生成汇编代码(二):把脚本编译成可执行文件.pdf
24丨中间代码:兼容不同的语言和硬件.html
24丨中间代码:兼容不同的语言和硬件.m4a
24丨中间代码:兼容不同的语言和硬件.pdf
25丨后端技术的重用:LLVM不仅仅让你高效.html
25丨后端技术的重用:LLVM不仅仅让你高效.m4a
25丨后端技术的重用:LLVM不仅仅让你高效.pdf
26丨生成IR:实现静态编译的语言.html
26丨生成IR:实现静态编译的语言.m4a
26丨生成IR:实现静态编译的语言.pdf
27丨代码优化:为什么你的代码比他的更高效?.html
27丨代码优化:为什么你的代码比他的更高效?.m4a
27丨代码优化:为什么你的代码比他的更高效?.pdf
28丨数据流分析:你写的程序,它更懂.html
28丨数据流分析:你写的程序,它更懂.m4a
28丨数据流分析:你写的程序,它更懂.pdf
29丨目标代码的生成和优化(一):如何适应各种硬件架构?.html
29丨目标代码的生成和优化(一):如何适应各种硬件架构?.m4a
29丨目标代码的生成和优化(一):如何适应各种硬件架构?.pdf
30丨目标代码的生成和优化(二):如何适应各种硬件架构?.html
30丨目标代码的生成和优化(二):如何适应各种硬件架构?.m4a
30丨目标代码的生成和优化(二):如何适应各种硬件架构?.pdf
加餐丨汇编代码编程与栈帧管理.html
加餐丨汇编代码编程与栈帧管理.m4a
加餐丨汇编代码编程与栈帧管理.pdf
07丨实现一门编译型语言 · 应用篇 (2讲)
31丨内存计算:对海量数据做计算,到底可以有多快?.html
31丨内存计算:对海量数据做计算,到底可以有多快?.m4a
31丨内存计算:对海量数据做计算,到底可以有多快?.pdf
32丨字节码生成:为什么Spring技术很强大?.html
32丨字节码生成:为什么Spring技术很强大?.m4a
32丨字节码生成:为什么Spring技术很强大?.pdf
08丨实现一门编译型语言 · 扩展篇 (3讲)
33丨垃圾收集:能否不停下整个世界?.html
33丨垃圾收集:能否不停下整个世界?.m4a
33丨垃圾收集:能否不停下整个世界?.pdf
34丨运行时优化:即时编译的原理和作用.html
34丨运行时优化:即时编译的原理和作用.m4a
34丨运行时优化:即时编译的原理和作用.pdf
35丨案例总结与热点问题答疑:后端部分真的比前端部分难吗?.html
35丨案例总结与热点问题答疑:后端部分真的比前端部分难吗?.m4a
35丨案例总结与热点问题答疑:后端部分真的比前端部分难吗?.pdf
09丨面向未来的编程语言 (3讲)
36丨当前技术的发展趋势以及其对编译技术的影响.html
36丨当前技术的发展趋势以及其对编译技术的影响.m4a
36丨当前技术的发展趋势以及其对编译技术的影响.pdf
37丨云编程:云计算会如何改变编程模式?.html
37丨云编程:云计算会如何改变编程模式?.m4a
37丨云编程:云计算会如何改变编程模式?.pdf
38丨元编程:一边写程序,一边写语言.html
38丨元编程:一边写程序,一边写语言.m4a
38丨元编程:一边写程序,一边写语言.pdf
10丨结束语 (1讲)
结束语丨用程序语言,推动这个世界的演化.html
结束语丨用程序语言,推动这个世界的演化.m4a
结束语丨用程序语言,推动这个世界的演化.pdf
评论0