【问题标题】:What is the correlation between system design and design patterns?系统设计和设计模式之间有什么关联?
【发布时间】:2019-02-13 22:13:06
【问题描述】:

我刚刚开始进行系统设计,我想知道系统设计和设计模式之间的关联是什么?

【问题讨论】:

  • 有一些设计模式可以解决软件系统的不同级别。类级别、组件级别、系统级别等。您的实际问题是什么?
  • @SupunWijerathne 这更像是一个普遍的问题。我只是想知道了解设计模式对系统设计有何帮助。我认为系统设计会考虑可扩展性、架构等问题。那么,设计模式在系统设计中体现在哪里?

标签: design-patterns software-design system-design


【解决方案1】:

如果有“最佳系统设计”之类的东西,那绝对与设计模式的使用无关。

设计模式只是软件设计中重复出现的元素的名称。这个想法是为了改善沟通,避免每次出现此类元素时都必须重新发明轮子。

因此,使用设计模式可能会节省您的时间,并使其他开发人员更容易理解设计。但这并不一定会使情况变得更好或更糟。

【讨论】:

    【解决方案2】:

    设计模式是一对问题解决方案。也就是说,它是针对软件设计中常见问题的现成解决方案。

    但是,这并不一定意味着为了做出出色的设计,您应该遵循一些模式。大多数时候,我们试图解决的问题比我们在模式中看到的更具体(具体)。因此,我们需要定制我们将要使用的任何模式。

    另一方面,对于我们试图解决的某个问题,可能有许多现成的解决方案。在这种情况下,我们可能需要考虑每种情况的权衡。 (例如:性能优于可维护性,具体情况,我们需要确定我们真正想要的系统)

    最后一件事,尝试将模式拖放到我们正在制作的设计中只是为了使用模式,而不知道它的实际用途,这是一种非常糟糕的做法。这种情况是有史以来最糟糕的。实际上,过度工程比工程不足更邪恶。您应该能够识别出您可以享受许多不同世界的商品的甜蜜点。 ;)

    【讨论】:

      【解决方案3】:

      两者都用于设计软件产品,否则两者完全用于不同的环境。

      【讨论】:

        【解决方案4】:

        设计模式是针对软件设计中给定上下文中常见问题的通用且可重用的解决方案。

        系统设计是为系统定义架构、模块、接口和数据以满足特定要求的过程。

        系统设计与系统分析、系统架构和系统工程有关,但与设计模式无关。

        【讨论】:

          【解决方案5】:

          系统设计是定义系统构建块以解决已定义问题的过程。系统设计的构建块包括系统架构、模块和模块之间的接口。

          设计模式是“对通信对象和类的描述, 定制以解决特定上下文中的一般设计问题”(来自 GoF 设计模式)

          【讨论】:

            【解决方案6】:

            系统设计是影响整个系统的设计决策的集合。 设计模式总结了常见问题的解决方案,通常应用于系统的一部分。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2010-10-03
              • 1970-01-01
              • 2011-04-11
              • 1970-01-01
              • 2023-03-04
              • 2018-06-03
              • 1970-01-01
              • 2015-12-28
              相关资源
              最近更新 更多