每当使用设置向导时,用户都会回答许多不同的问题,直到可以开始真正的安装。将此与我当前项目中的一个类进行比较:我有一个需要多个配置步骤的类。它不适用于安装程序,但我认为安装程序向导是解释所需的更大配置功能的好方法。我正在努力寻找一个好的设计解决方案。
我目前的解决方案方法:
Flat:我可以定义一个大类,其中所有步骤都包含在方法/函数/属性中。当调用错误的方法时,可以添加一些控制方法来引发异常。它会完成它的工作,但是程序员会因为看到这么多不同的方法而感到困惑。(-> 他需要更多时间来理解它是如何工作的)
层次结构:我可以为每个配置步骤创建大约 3 个不同的类。每个都有自己的方法和功能。最后一个类在其构造函数中需要所有 3 个配置类的实例。这看起来不会太混乱,因为每个类中只有正确的方法可见。然而,程序员可能会生气,一个小类需要如此复杂的准备,创建 3 个其他类。也许是嵌套类,但我认为这也是一种糟糕的编码风格。
我想知道是否有人已经遇到过这样的问题并且可以通过......提供合适的设计模式,或者针对此类问题提供一些经验/最佳实践类结构。
我已经搜索了类似的问题,检查了一些可能适合的设计模式,并且已经提供了 2 种方法思路来说明答案的方向。如果您认为答案不够清楚,请评论/询问缺少的部分。