小鬼之家

流浪,游走于文明与原始之间. 关注底层技术,实现美好生活。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

01 2009 档案

摘要:常常看到或听到有人讨论控件开发方式好还是MVC开发方式好的问题,在此我就不参和这个话题了,不过在文中为了展现MVC方式的特点,可能会有些内容会与控件的方式进行比较,但这只是为了展示某一个小方面的特性而已,并不是说谁就比谁好。采用MVC开发方式的最初以及最主要的目的,那就是让表现与数据进行分离。目前比较成熟的MVC框架都基本上能达到这样子的目标,而我个人比较偏爱promesh这样的小型的MVC框架,... 阅读全文
posted @ 2009-01-23 10:14 黄尚 阅读(405) 评论(0) 推荐(0)

摘要:上两篇用分析JSON的例子讲完了词法分析与语法分析的整个过程,本篇再谈谈自己的一些认识。  词法分析与语法分析的理论基础都是自动机原理。或许会有人认为理论比较难学难用,其实我们也不必拘泥于它的理论,我们只要知道在一个大的循环里,我们要使用大量的if语句来进行判断,根据要分析的对象的边界条件来产生相应的对象也就可以了。对词法或语法的解析,最难的地方是要怎么才能知道这样的词法或语法是行得通的,而需要证... 阅读全文
posted @ 2009-01-22 16:35 黄尚 阅读(1206) 评论(1) 推荐(0)

摘要:上一篇谈到了词法分析,并且给了一小段词法分析上的代码。如果大家对着代码看,可能就会发现我构造了一个对象来对字符串进行读取。具体代码是:CharReadersrc=newCharReader(chars);这样子写是为了减少在后面的while语句对字符串数组末尾的判断,起到简化代码的作用;这样的小技巧在写一些比较复杂的算法的时候特别的重要。实现完词法分析之后我们就要进行到下一步的语法分析了。教科书的... 阅读全文
posted @ 2009-01-22 15:28 黄尚 阅读(684) 评论(0) 推荐(0)

摘要:计算机相关专业的差不多都有学过编译原理吧?今天我班门弄刀,也谈谈我自己对编译原理的认识和理解。当然啦,我主要要谈的是编译器的前端的实现,后端的代码生成我目前还没有研究过。 实现一个编译器有两大步骤:一是词法分析,二是语法分析。应对这两块有很多的工具是可以帮助我们进行这样的工作的(例如:flex、yacc等),但我要说的是怎么完全手工去实现它。语法分析的主要目的是把一个个的字符和字母之类的东西给识别... 阅读全文
posted @ 2009-01-22 14:41 黄尚 阅读(2636) 评论(8) 推荐(0)