比較實(shí)用有效的編譯原理學(xué)習(xí)步驟:
1.先利用ANTLR之類的編譯器生成工具,做一個(gè)小程序(如上面提到的HTML文件轉(zhuǎn)化成純文本文件的程序),所需知識(shí)只是正則表達(dá)式的基本知識(shí)和生成工具本身的使用方法(可以看聯(lián)機(jī)幫助和網(wǎng)上教程(tutorial)來(lái)掌握). 這樣做的好處是:
1)可以體會(huì)到編譯原理的實(shí)用性,提高學(xué)習(xí)興趣
2)入門容易,消除編譯原理學(xué)習(xí)的畏難情緒.
3)獲得詞法分析器和語(yǔ)法分析器的感性認(rèn)識(shí),有利于加深對(duì)理論的理解.
4)獲得編譯器自動(dòng)生成工具(compiler compiler)的使用經(jīng)驗(yàn),提高解決實(shí)際問題的能力.(實(shí)際工作很多都不是手編而是利用工具的)
2.象ANTLR之類的工具是開源(open source)的,可研究其源碼,以便必要時(shí)自己手編分析程序.
3.回過頭來(lái)看編譯原理教材. 這時(shí)大概會(huì)發(fā)現(xiàn),很多理論很容易懂,剩下的只有上面說(shuō)的幾個(gè)難點(diǎn),多看幾遍,重點(diǎn)突破.
4.結(jié)合教材所附源碼,進(jìn)一步加深對(duì)教材的理解
大家給我提提意見,給點(diǎn)好的建議,公司過年放14天假,打算回去突擊下編譯原理。