我创建了一个名为VehicleConfig
的类。它具有各种属性,如颜色,bhp,类型,制造,年份等。
我想创建一个DSL来配置它的实例。并非所有属性都可以随时设置;这取决于它是什么类型的车辆。汽车允许颜色选择,但不允许卡车。
我该怎么做?我正在寻找一个关于如何编写内部DSL的良好,彻底的解释。
答案 0 :(得分:0)
我的建议是写一个VehicleConfigurationFactory
(应用你的设计模式技巧)。这个工厂的主要目的是建立不同类型的Vehicle
。每个Vehicle
都有自己的行为定义。
工厂设计模式:这种模式引入了类之间的松散耦合,这是在设计应用程序体系结构时应该考虑和应用的最重要的原则。通过针对抽象实体而不是具体实现进行编程,可以在应用程序架构中引入松散耦合。这不仅使我们的架构更灵活,而且更不易碎。