现在硬着头皮写一遍后,回头再看书中的讲觉得很亲切,很想知道自己写时碰到的疑问还有啥解决思路!
"练习":最朴实的类比——就像学生时代去做练习题/附加题一样
其实这种方式的本质就像学生时代说: 学一课的书本知识 怎么样学效果最好那样简单。 (编译器那么庞大的一门课,其实和学一课的原理是通的,1和100的关系)
那时候都知道: 自己做课后作业题,经常会有些难的、需要思考尝试半天的,最会未必也能解开。
但就是在这个 思索问题的过程中, 得到了“对这部分内容中的问题进行思考” 这一最核心的练习。
x 你能指望 椭圆的 那些题翻翻书就能掌握吗? <----------------> 语法分析/符号表 这种题目也不是翻翻资料就能 掌握的。
x 把答案抄一抄完成作业,收效甚微 <----------------> 直接拿别人写好的源码,其实和 拿到作业直接去看答案 是一样的。 (“看源码 你就失去了锻炼的机会。——vczh”)
√ 自己去思考‘附加题’怎么解。学生时一题都可能搞好久 <------------------------------> 自己去思考怎么设计 ,琢磨半天!(总能写出些伪代码思路/ 写得low也没关系 ===== 这是个 感受难点、理解难点的过程)
√ 最后再满怀疑问去看答案 ,恍然大悟!对比/收获! <------------------------------> 这时再去看书的讲解、别人的设计 (能迅速理解、掌握得也实在!)