代码失控与状态机(下)
序言 在《代码失控与状态机(上)》的文末,我们留了一个解析「成员访问表达式」的“作业”,那么,通过本文我们一起来完成这个作业。 首先,为什么要苦哈哈的写一个这样看上去没什么用的解析器?因为在某些 IoC 或 AOP 容器中*(不幸的是我需要实现一个这样的* IoC 容器),常需要动态求解成员访问表达式的值,而解析表达式就是第一步。其实这个“作业”正是编译器技术中词法解析的简化版,自己手动撸一遍,对理解《编译原理》的前端处理技巧是一个很好的入门练手。
序言 在《代码失控与状态机(上)》的文末,我们留了一个解析「成员访问表达式」的“作业”,那么,通过本文我们一起来完成这个作业。 首先,为什么要苦哈哈的写一个这样看上去没什么用的解析器?因为在某些 IoC 或 AOP 容器中*(不幸的是我需要实现一个这样的* IoC 容器),常需要动态求解成员访问表达式的值,而解析表达式就是第一步。其实这个“作业”正是编译器技术中词法解析的简化版,自己手动撸一遍,对理解《编译原理》的前端处理技巧是一个很好的入门练手。
前言 前几天和某某同学吃饭席间,他聊到每当要修改老项目中自己写的代码时就痛苦不堪,问我是不是也有同感。我觉得这应该是不少程序猿的心声,之所以会这样,大致有两个主因: