【问题标题】:High-Level Design Patterns or Not Reinventing The Wheel高级设计模式或不重新发明轮子
【发布时间】:2010-11-26 06:25:50
【问题描述】:

编程的圣杯是解决一个问题一次,然后永远不断地重复使用该解决方案。然而,尽管我尽了最大的努力,但我发现我经常重新处理熟悉的问题。因此,抛开 GoF 设计模式不谈,我曾多次设计过日历、内容管理和个人/组织通讯录等。

我想知道是否有任何好的资源(书籍、网站等)可供我细读常见的高级业务设计。我确实意识到我的项目和我可能发现的任何模式之间的要求会有所不同,但我确实希望问题的核心保持不变,会有很多来之不易的经验可供借鉴。另外,尽管这很怪异,但我只是喜欢阅读有关设计出现的过程和决策背后的基本原理。我喜欢商店、初创公司和程序员对他们的设计透明的时候。 (例如 37Signals、Garret Dimon)

post 触及主题并将这些高级设计模式称为“功能设计模式”,但我不确定这是我所描述的常用术语。 “功能设计模式”的搜索结果并不多。我还搜索了“特定领域的设计模式”和“数据模型设计模式”,后者提供了an interesting result,所以也许这更符合目标。你知道我要描述什么吗?有什么好的资源吗?任何其他透明地展示其新兴设计的商店/编码员?

【问题讨论】:

标签: design-patterns data-modeling


【解决方案1】:

如果您还没有听说过the Hillside GroupPattern Languages of Programs 事件或the books that have come out of this effort,我会从那里开始。我对这项努力感到非常高兴。

【讨论】:

    【解决方案2】:

    您是否了解过数据建模,尤其是 conceptual schema

    我认为您必须注意使用这种抽象模式可以实际实现的目标。模式越抽象,它所能提供的实现细节就越少。魔鬼在细节中 - 因此抽象模式仍有待完成。

    我不相信有一个单一的解决方案可以解决所有可能的问题。从务实的角度来看,我认为研究管理复杂性的方法比研究可以解决每个问题的模式更有用。

    【讨论】:

      【解决方案3】:

      我发现以下内容 - 不确定它们与您的相关性:)

      常用书籍:
      - Gamma、Helm、Johnson 和 Vlissides 的设计模式(Addison Wesley Longman,1995 年。ISBN 0-201-63361-2)

      【讨论】:

        【解决方案4】:

        我也考虑分析模式。

        我相信它来自 Martin Fowler。 (谷歌显示我的记忆是正确的......)

        【讨论】:

          【解决方案5】:

          谢谢大家的反馈。我知道程序员工具箱中常见的低级设计模式,并且我过去曾访问过 Hillside Group。我会花更多的时间在那里。

          当我进一步调查时,我认为我所追求的设计模式与数据建模密切相关。我正在重新设计一个我放在一起的日历数据模型,由于新出现的需求,一些增强/修复有点尴尬。不幸的是,随着设计的发展,有时我必须沿着一条路走得足够远,让需求出现,回溯一点,然后根据从经验中发现的缺点进行改造。根据我的经验,数据模型不仅在确定系统的优雅性方面发挥着重要作用,而且在确定其 UI 方面也发挥着重要作用。

          我会继续关注其他推荐的资源。

          【讨论】:

            【解决方案6】:

            对于优秀的数据建模书籍:

            Hay:企业模型模式

            Fowler:分析模式

            Silverston:数据模型资源书(第 1、2、3 卷)

            Blaha:数据建模的模式

            【讨论】:

              猜你喜欢
              • 2022-01-10
              • 2022-06-14
              • 1970-01-01
              • 2012-09-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-04-07
              相关资源
              最近更新 更多