Design patterns 设计模式:您是否在项目中使用它们?

Design patterns 设计模式:您是否在项目中使用它们?,design-patterns,architecture,Design Patterns,Architecture,您如何决定选择哪种设计模式 我对发展项目的态度一直是 记录业务需求 设计数据库 决定技术(这个决定几乎总是由客户决定。) 开始开发原型 获得原型批准。(迭代) 构建应用程序 发布测试。(迭代) 移交维修 我不确定设计模式在哪里有用。步骤6(构建应用程序)是一个不错的选择。虽然我理解Neil关于在设计阶段决定设计模式的评论(你实际上没有),但我发现它们经常在构建过程中出现,因为你正在编码/重构。当然,提前知道设计模式是什么很有帮助,不使用它们就很难知道它们,所以这有点恶性循环。步骤6(构建应用程序

您如何决定选择哪种设计模式

我对发展项目的态度一直是

  • 记录业务需求
  • 设计数据库
  • 决定技术(这个决定几乎总是由客户决定。)
  • 开始开发原型
  • 获得原型批准。(迭代)
  • 构建应用程序
  • 发布测试。(迭代)
  • 移交维修

  • 我不确定设计模式在哪里有用。

    步骤6(构建应用程序)是一个不错的选择。虽然我理解Neil关于在设计阶段决定设计模式的评论(你实际上没有),但我发现它们经常在构建过程中出现,因为你正在编码/重构。当然,提前知道设计模式是什么很有帮助,不使用它们就很难知道它们,所以这有点恶性循环。

    步骤6(构建应用程序)是一个不错的选择。虽然我理解Neil关于在设计阶段决定设计模式的评论(你实际上没有),但我发现它们经常在构建过程中出现,因为你正在编码/重构。当然,提前知道设计模式是什么很有帮助,不使用它们就很难知道它们,所以这有点恶性循环。

    通常在构建原型之前,也总是在构建应用程序之前,你必须设计它。在这里,设计模式的知识非常有用,因为它不仅可以帮助您进行设计,还可以帮助您与其他开发人员交流您的想法。例如,当您告诉另一个开发人员某个特定类是工厂,或者另一个类是作为单个类实现的时,他们立即更好地掌握了他们做什么和/或如何做,以及如何适应应用程序的其余部分


    我非常推荐O'Reilly的“头先设计模式”,让您开始

    通常在构建原型之前,以及构建应用程序之前,您必须设计原型。在这里,设计模式的知识非常有用,因为它不仅可以帮助您进行设计,还可以帮助您与其他开发人员交流您的想法。例如,当您告诉另一个开发人员某个特定类是工厂,或者另一个类是作为单个类实现的时,他们立即更好地掌握了他们做什么和/或如何做,以及如何适应应用程序的其余部分


    我非常推荐O'Reilly的“头先设计模式”,让您开始

    它将在第4步和第6步中有用…:-)

    在原型设计中,设计模式非常方便。如果现有的架构/设计不够灵活,那么在现有原型中添加更多功能将非常麻烦。虽然这并不意味着你应该总是使用设计模式。他们教授的原则很重要,比如开闭原则、信息隐藏以及如何正确地做到这一点,以及何时做到这一点,支持组合而不是继承等。所有这些指导原则都是为了减少向现有应用程序/原型添加更多功能的痛苦

    在你的职业发展过程中,你会看到这些原则在许多地方得到应用。没有必要严格遵循某些模式,但应该遵循这些模式背后的原则


    希望对您有所帮助。

    它将在第四步和第六步中有用…:-)

    在原型设计中,设计模式非常方便。如果现有的架构/设计不够灵活,那么在现有原型中添加更多功能将非常麻烦。虽然这并不意味着你应该总是使用设计模式。他们教授的原则很重要,比如开闭原则、信息隐藏以及如何正确地做到这一点,以及何时做到这一点,支持组合而不是继承等。所有这些指导原则都是为了减少向现有应用程序/原型添加更多功能的痛苦

    在你的职业发展过程中,你会看到这些原则在许多地方得到应用。没有必要严格遵循某些模式,但应该遵循这些模式背后的原则


    希望能有所帮助。

    设计模式的使用在任何开发中都是固有的。不管您是否列出它,许多实现都遵循设计模式。对设计模式的了解无疑有助于设计一个健壮、可扩展、易于维护、当然也易于理解的应用程序。在很多情况下,使用设计模式有助于优化解决方案。在您提到的典型软件开发周期中,设计模式的使用在原型阶段非常关键


    例如,假设您需要实现一个支持使用不同协议(XML/Http、WebServices等)进行通信的通信层。在原型设计中,您可以轻松地实现一个层,并使您的应用程序直接使用该层进行通信。如果您想在原型设计中使用工厂模式和任何协议的简单实现,那么扩展最终应用程序就成了小菜一碟。这不仅节省了总体开发时间,而且还确保了开发方法的更清洁。

    设计模式的使用在任何开发中都是固有的。不管您是否列出它,许多实现都遵循设计模式。对设计模式的了解无疑有助于设计一个健壮、可扩展、易于维护、当然也易于理解的应用程序。在很多情况下,使用设计模式有助于优化解决方案。在您提到的典型软件开发周期中,设计模式的使用在原型阶段非常关键

    作为一个例子,让我们支持