诊断Java代码: 筹划可扩大的操纵程序,第4部份[Java编程]
本文“诊断Java代码: 筹划可扩大的操纵程序,第4部份[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在 上个月的专栏文章中,假如您掌握以下几点的话,那么您会懂得,底层代码的可用性不会成为问题:
若何辨认配置脚本
若何挑选答应哪类配置
辨认哪类环境要求黑箱可扩大性
衡量可扩大性所带来的构建复杂性
当供应此扩大性给配置脚本时,您 实际上正在构建一种语言.
您还熟习到,考虑到利用程序的黑箱可扩大性,利用 S-expression 是一种快速成立一种配置语言的有效手段.我们将在本文深化研究 S-expression,并供应了一个若何用这些 S-expression 来快速便利地为特定利用程序成立配置语言的示例.
关于 S-expression 的一些知识
让我们回想一下,S-expression 是由圆括号脱离的元素列表的语法表示法.S-expression 有三种情势:
空元素列表
非空元素列表
单一原子元素(如一个字)
S-expression 作为配置语言非常有效,因为它们易于解析.普通的 S-expression 解析器将数据读入程序,然后这个程序再查抄表达式能否服从更具体的语法约束.用这种办法,我们得到了解析输入的全部好处 ― 如早期的错误输入检测和增添的安全性 ― 除去了编写和保护通例语法解析器时所带来的精神损耗和开销.一样,差别于解析器生成器所构造的语法解析器,跟踪语法错误根源时,错误消息的输出可以很切确且很有帮忙.
“S”较 XML 的上风
正如我在上一篇文章中提到的,利用 S-expression 的很多好处一样可以通过利用基于 XML 的配置语言而得到.基于 S-expression 配置语言较 XML 的主要上风在于它是非常轻量型的并且成立快速.
一样,在很多情形下,基于 S-expression 的配置脚本比等价的基于 XML 的脚本更易于阅读和编辑.当我们谈论下面一些基于 S-expression 脚本的示例时,请考虑在 XML 标记中它们是什么模样.
示例:给编辑器增添宏支持
假定我们但愿给文本编辑器增添简单的宏支持,答应用户定义基本操作的复杂序列.我们大概乃至想加入对循环或递归构造的支持.
这里是宏的大概情形的示例:
清单 1. 简单的宏
(define (cutAndPasteAtEnd)
(sequence
(cut HIGHLIGHTED_TEXT)
(move-to END_OF_DOCUMENT)
(paste CLIPBOARD))
以上是“诊断Java代码: 筹划可扩大的操纵程序,第4部份[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |