1

是否有任何开源代码,我可以看到一些设计模式,如命令、状态模式正在实现以供实际使用。

理论上我已经看到了各种模式的实现,但如果我能看到它的实际用途,那会很有帮助。

目前我正在一个具有工作流程的项目中工作,工作流程中的各个步骤都是从数据库中获取的。

这是否可以通过将工作流中的每个步骤作为命令然后使用命令模式来使用命令模式?

4

1 回答 1

2

这可能很难接受,但设计模式的严格应用几乎没有实际用途。正确的解决方案几乎从不只包括应用模式;很大程度上取决于编程语言、实际问题和开发人员偏好。

例如,从 DB 中提取数据的典型 Java-OOP 方法可能看起来像您所描述的那样,但是使用具有功能可能性的语言的人可能会使用OptionalMonad 来实现它,这不一定会更糟,但对于同一问题会产生完全不同的解决方案。

因此,在您的解决方案中,您应该使用良好设计的一般原则(如 DRY)和您的编程语言的习语来解决问题,而不是将所有事情都视为钉子(锤子是您想要使用的模式)。

奇怪的是,过度使用模式是 Java 语言的典型特征,而且你不必寻找很多东西,比如 Singletons of Managers 的工厂...

于 2013-07-12T14:09:35.100 回答