2009-06-07 42 views
3

我们有一个系统,它的行为是由多个XML文件中定义的。(大约50种不同的XML文件的每一个支配子系统的行为。)哪一个适合更好的UI或DSL?

遗留原因的XML文件是一个自定义格式,意在使系统中的各种组件容易消耗。

自定义格式对于人类来说不是非常直观和可读的(这也是我们重要的考虑因素)。

那么我们该如何解决这个可读性问题呢?

我觉得在这些XML文件之上编写一个直观的用户界面应该能够完成这项工作。

然而,我的同事认为用DSL代替XML文件是一个更好的主意,因为它们可以是直观的和机器可读的。

这是一个好主意还是矫枉过正?我觉得,与说UI相比,获得DSL是非常困难的。但我可能是错的。

任何帮助将不胜感激。谢谢。

回答

2

XML到XML转换是一种中途解决方案,可能是我使用的方法。

的UI具有非常完整的它之前的行为的基于文本的说明的替代品,和普通的基于文本的成语,如复制&粘贴,搜索&替换等都是尴尬的,在一个良好的易用性来实现UI。

但是,具有自定义分析器的成熟的DSL可能是太过分了,特别是如果在团队的多个成员中没有解析器或编译器的经验。不要误解我的意思 - 我认为人们不应该害怕解析器,我自己是一名编译器工程师 - 但这是一些人害怕的事实,如果解析器做得不对,它可以得到凌乱很快。因此,我主张设计理想化的XML格式,并编写一个工具,使用XSLT将该格式转换为真正的XML格式(如果它很容易 - 我不会太深入XSLT函数等)或简单的翻译应用程序。

有一个可读的文本格式的规范有很多优点:临时编辑很容易(你只需要记事本),来自源代码控制的差异是可读的,片段可以通过电子邮件发送等等。具有文本格式的可用性和功能奇偶并不容易。

+0

我同意巴里 – Kane 2009-06-07 08:47:58