antlr指南(前言)

来源:互联网 发布:windows 的平板推荐 编辑:程序博客网 时间:2024/05/16 08:39

原址:http://www.aliensoft.cn/Chapter1.mht

 

前言

当今软件开发对开发效率和质量的要求越来越高,出现了许多新的编程语言,开发工具和框架。许多软件开发公司和个人也在开发适合自己领域或本行业的工具、框架来提高生产力。其中一些工具和框架需要分析现有编程语言的语法或通过配置文件来获得软件设计开发的元数据信息。比如:UML建模工具需要分析面向对象语言程序中定义了哪些类,类中又定义了哪些方法以及方法的参数,类与类之间的关系等。获得这些元数据信息后就可以绘制出类图。还有些工具需要定义新的语言或格式。如Hibernate定义了HQL语言来实现适合自己的数据查询方式。笔者之前在开发一个SQL分析工具时就要分析SELECT语句的语义,比如一个查询要查询哪些表“FROM tableName”,表与表之间是怎么关联的“table1 INNER JOIN table2 ON …”等等。这只有对SELECT语句进行语法分析后才能实现。笔者当时没有多少语法分析方面的开发经验,后来使用了ANTLR工具解决了这个难题。随着笔者对ANTLR的了解,发现ANTLR是一个强大的语法分析工具,提拱了许多语法分析中的实用功能,尤其ANTLR3.0还提拱了一个开发环境,使用起来更加方便,整体上也有了很大的改进。所以又对ANTLR进行了全面的学习并编写了本书希望对有这方面需求的朋友能有所帮助。

ANTLR又一个语言识别工具(ANother Tool for Language Recognition, 是、根据一种可以嵌入如Java, C++C#等辅助代码段的文法描述,构筑出相对该文法定义的识别器,编译器或翻译器的一种语言工具框架。ANTLR是由Terence John Parr1989年开始开发的,现在已经发展到了3.0,支持Java, C, C++, C#, Objective-C, Python, and Ruby.1多种语言。ANTLR实现了语言识别编译开发的自动化,使用者只需写出EBNF推导式的文法描述就可以自动生成语言识别器。

  

 

原创粉丝点击