论坛元老
- 威望
- 94
- 贡献
- 133
- 热心值
- 18
- 金币
- 40392
- 注册时间
- 2020-8-31
|
〖课程介绍〗:! `! Y! s) E- c U. Y
适用人群:
任何想学习编译原理,亲手开发编译器,算法,系统架构,前端开发,reactjs框架的技术爱好者
* X2 \- X: ^7 Z* `+ j" H7 E E
课程概述:: l: a- @' o* v) b. I) {! l, l" B4 l- w R
我打算重新用Reactjs+BootStrap的方式开发一门新编程语言的编译器,这么语言叫Monkey,它有点类似于javascript这种脚步语言,由于语法简单,实现它的编译器比实现C语言的编译器要容易很多。Monkey语言具备编程语言的所有要素:4 P2 m0 W& i5 t! M
1, 有类似C语言的语法结构
2, 支持变量绑定2 m0 K, _7 C) A( I w
3, 支持整形和布尔型数据类型
4, 支持算术表达式的解析
5, 一级类定义(first-class)和高阶函数(higher order functions)9 s$ |1 n& L3 ^7 ^) B8 C
6, 支持闭包,这点像javascript
7, 支持字符串数据类型& C" e- K( ~2 I* E
8,支持数组型数据类型. j% R- O8 h/ q$ @3 S
9, 支持哈希表型数据类型# \. ? C& p; S+ s/ n: d
之所以想到用Reactjs 和 Bootstrap 来开发,一来是前端开发能够支持丰富多彩的用户界面,这样使得整个项目始终保持在生动活泼的状态之下。而来当今前端开发,特别是基于Reactjs的前端开发炙手可热,掌握该前端框架的工程师能够在行业内获取高薪就业机会。8 r: H+ w% I$ W1 R0 H8 m0 I( D
. `) o% O& N5 g7 r* E, ]9 _$ W
目录大纲:
1. Reactjs框架和bootstrap前端开发技术讲解6 W$ k3 y4 J* u8 s- j
2. 词法分析8 S" a! A$ ~3 @$ @! \# y
3. 语法分析- K, n# k" ?, S3 L c8 B9 e# C
4. 生成执行树" a& X' Q8 {( {8 J, V: H
5. 解析复杂的语言数据结构
我们会把Reactjs框架开发技术和编译原理结合在一起学习,Reactjs用于开发Monkey语言的页面IDE,也就是我们要做一个网页版visual Studio或是Eclipse,而编译原理算法作为内核,课程每周两课。6 I+ T2 u% e" i* ?1 C
〖课程目录〗:
1 用reactjs和bootstrap创建页面IDE.mp4* [. i5 S) c: s F' L) h+ E; V
2 词法解析的基本原理.mp4
3 词法解析算法的代码调试演示.mp4
4 即时实现关键字语法高亮.mp4
5 关键字语法高亮代码调试和讲解.mp4" J& E9 p9 \; D9 c7 n& V* a
6 关键字语法高亮代码讲解和调试2.mp4
7 抽取光标所在行改进语法高亮效率.mp4; f# L9 ?) P6 ^* R6 ^
8 屏幕取词的代码讲解.mp4
9 屏幕取词代码调试演示.mp49 O+ v8 i# {- e0 q
10 语法解析的基本原理.mp46 L, r0 {- ^0 U
11 语法解析器的代码调试及讲解.mp4
12 使用普拉特解析法解析复杂的算术表达式.mp45 o7 K2 H( q5 s" H
13 解析前序表达式.mp4
14 中序表达式的解析.mp4
15 解析组合表达式,if..else语句块和间套函数调用.mp4" d i1 T. \& I( G) C4 B/ R" K) `) [4 A
16 函数定义及函数调用的解析.mp4" J1 Q r- p7 Y
17 符号系统与代码执行.mp4
18 复杂算术表达式的解释执行.mp4
19 解释执行ifelse语句.mp4
20 解释执行return语句.mp42 y. L1 D5 \8 i% j0 m- Z$ e" W
21 变量绑定和函数调用.mp4( S* _7 M7 c! t+ ~" _3 k
22 函数闭包和字符串变量.mp4
23 添加内嵌API和数组数据类型.mp4
24 增加三个数组API和map数据结构类型.mp4/ u' E! R) B* k L
25 解释执行哈希表对象.mp4
26 使用web worker多线程机制打造页面单步调试IDE.mp4
|
|