我先吐槽一句.作业太多了.
看到了傅师兄的博客,受到了强烈的启发.决定开启一个新系列文章.跟随大牛的脚步是不能停止的.
本版块有利于督促自己钻研的更精些.不然不好意思写.
目前觉得有必要写写的课就是现代信息检索和编译原理,以及最近在看的深入理解计算机系统和算法导论部分.
规划.
Learning by doing 系列文章主要分为:
- 搜索引擎系列
- 深入理解计算机系统系列
- 算法导论系列
- 编译原理系列
- 后续(前面就很多了...再加不现实..).....
详细实施计划
搜索引擎系列 Learning by doing. (不使用lucene,而是自己考虑仿照写一个超mini版的.)
- 介绍lucene
- mini版搜索引擎架构设计
- 中文分词
- 索引构建
- 非精确topK排序
- 分层聚类.
- 评分系统
- UI和Ajax
深入理解计算机系统系列 Learning by doing. (课后习题,值得庆幸的是,课后习题没有4个星的了.)
- 信息表示
- 程序机器级表示.
- 优化程序性能
- 存储器层次
- 链接
- 异常流.
- 虚拟存储
- 系统级
- 网络和并发.(这个有四星的...哭)
算法导论系统系列 Learning by doing. (课后习题.这个,数学我真心不会...)
这个说实话,还没想好写什么..书太厚了..
编译器系列 Learning by doing.
编译器系列会利用 lex 和 yacc ,编译后端会利用LLVM来处理,因此,Mini编译器系列将具体按照如下步骤进行(该部分是傅师兄之前遗留下来的,同门师兄,看他后来都不屑写这些了,老师也让我看看LLVM,所以恬不知耻的抄了他的计划.):
- 介绍Lex的详细使用
- 介绍Yacc的使用规则
- 介绍LLVM使用
- 编译器设计
- 编译器前端
- 中间代码生成
- 编译器优化
- JIT 相关介绍及利用LLVM实现JIT