用Java创建内部DSL

时间:2013-10-26 12:50:13

标签: java dsl

我创建了一个名为VehicleConfig的类。它具有各种属性,如颜色,bhp,类型,制造,年份等。

我想创建一个DSL来配置它的实例。并非所有属性都可以随时设置;这取决于它是什么类型的车辆。汽车允许颜色选择,但不允许卡车。

我该怎么做?我正在寻找一个关于如何编写内部DSL的良好,彻底的解释。

1 个答案:

答案 0 :(得分:0)

我的建议是写一个VehicleConfigurationFactory(应用你的设计模式技巧)。这个工厂的主要目的是建立不同类型的Vehicle。每个Vehicle都有自己的行为定义。

工厂设计模式:这种模式引入了类之间的松散耦合,这是在设计应用程序体系结构时应该考虑和应用的最重要的原则。通过针对抽象实体而不是具体实现进行编程,可以在应用程序架构中引入松散耦合。这不仅使我们的架构更灵活,而且更不易碎。