Fork me on GitHub

《两周自制脚本语言》读后感

  粗略读完了本书,说实话比我想象的好。之前在学校就把基础部分(1-10章)过了一遍,回家之后比较懒,但终于看完了,代码也很好,可惜很多自己都没亲手敲。从消化程度来说,打算回学校之前再精读一遍,并敲完说有代码,因为确实值得学习!!

  看完之后感觉以下几点印象尤为深刻:

完全注重实战

  我一直不赞同完全脱离理论去实战,因为上学期已经修完了编译原理,所以我现在急需的就是一本纯实践的书,而这本书就是。就算介绍理论也完全是为了讲解代码!

涉及诸多语言特性

  说实话,在借这本书的时候。我以为本书涉及的编译器(准确说是解释器)甚至没有下学期课设的编译器那么复杂,当时肤浅的认为就是写一个弱类型的语言而已。看完本书之后,发现:函数、面向对象、闭包、优化、数组、中间代码.......真是大开眼界!闭包甚至之前都没怎么接触。总之,就凭这一点,读完本书的收获就已经远远超出了我的预期!

启发性的讨论

  本书多次拿Stone语言(本书开发的语言)和Ruby语言作比较(可能因为Ruby正是日本人发明的),也谈及了JavaScript语言的一些特性,还有C语言,这些讨论相当具有启发性!有一种温故而知新的感觉,又有一直横看成岭侧成峰的味道(从另一个角度再认识学过的语言)。

代码优雅、注释详实

  就算不看本书的源代码,对着书敲都能正确运行。因为作者借助于自己设计GluonJ使得修改代码十分容易。而我同期在看的另一本书《疯狂Java实战演义》就十分混乱,仅仅对着书根本敲不出可以运行的程序!每一章结束后都能立即看见效果,并且每一章互不影响。说实话,这本书的代码是我见过设计最优良的之一(印象中另一本《30天自制操作系统》也是日本人写的.......)。

易于实现

  之前也看过一些《自制编程语言》、《自制编译器》但都借助了lex/yacc或者JavaCC无形中增加了成本,反正我多少有些排斥,在这方面《自己动手写编译器、链接器》一书也很不错,全C语言,可惜代码不那么优雅(但真的很有深度),需要极大的耐性!(尚在学习)

一箭双雕

  本书采用Java实现,而正好自己也需要此类较大型的项目练手(Java进阶水平),所以除了编译器的实践,本书还是一次Java/设计模式的实践。除了学到编译器的知识,还对如何使用Java以及设计模式有了跟深刻的认识。

值得再次学习

  之前看到一个说法就是提高编程能力的一个阶段就是对着优秀源码敲,感觉这个如果是一个GitHub项目,star绝对轻松破千。此外对于本书的内容,也感觉自己只学到了那表面的80%还有最精华的20%没领悟透。所以,在回顾我理论知识后,极其有必要在从头到尾学习一遍本书,并敲完每一行代码。迈向高手的必经之路!

posted @ 2017-02-07 14:05  赵裕(vimerzhao)  阅读(3214)  评论(0编辑  收藏  举报