【问题标题】:Changing a Delphi/Oracle application from 2-tier to 3-tier将 Delphi/Oracle 应用程序从 2 层更改为 3 层
【发布时间】:2011-03-29 18:55:28
【问题描述】:

在我的公司,他们终于(大约是时候......)考虑将我们最畅销的应用程序之一从 2 层架构转换为 3 层架构,无论是在逻辑层(表示层、业务层和数据层)还是物理层面。可能我们会选择 Delphi-Delphi-Oracle 或 Delphi-Java-Oracle 方法来进行更改。

这是一个相对较旧的大型应用程序,在我开始在那里工作之前已经创建和修改了很长时间。除非必须更改某些内容,否则通常不会考虑重构。此外,业务逻辑存在于两个实际层中......叹息。

物理变化并没有给我带来太多困扰,但逻辑变化将是一种穿越地狱的通道。为了尽可能地平滑它,我想调查一下哪些 Delphi 组件更适合 3 层模型。

¿您会考虑使用哪些替代方案?

【问题讨论】:

  • 这个计划的驱动因素是什么?例如,是否支持其他数据库或其他前端(移动、Web、.net)或云部署?这将给出一个更清晰的画面,例如在 Delphi 和/或 Java 之间的中间层中进行选择。
  • 我问的基本一样:stackoverflow.com/questions/3431149/…
  • @mjustin,我们的客户有两个主要原因:如果需要,他们希望能够部署到其他数据库,并且他们还希望能够快速扩展,因为他们每年增长 2 位数.谢谢你的评论:-)

标签: oracle delphi architecture components 3-tier


【解决方案1】:

您是否考虑过 DataSnap XE?

【讨论】:

    【解决方案2】:

    我们最近使用 RemObjects DataAbstract 将我们的 2 层 Delphi 应用程序转换为 3 层。虽然最初的学习曲线相当陡峭,但我们对结果非常满意。

    DataAbstract 让您忘记数据库和网络连接的基本细节,专注于业务逻辑。它允许您创建一个抽象服务层,为您的服务器客户端提供一个很好的 API。使用这个 API,我们使用 Delphi 和 Delphi Prism ASP.NET 客户端连接到服务器。

    【讨论】:

    • 在学习如何使用 RemObjects DataAbstract 时,您发现的最困难的问题/问题是什么?
    • 我认为最难的部分是了解 DA 框架的运行方式。我会说文档不够出色,但它们确实快速且信息丰富地回答了大多数问题。 DA 允许您创建一个几乎无需编码的 3 层系统。只需创建一个模式,就是这样。不幸的是,我们做事的方式阻止了我们这样做,但我们仍然发现架构足够灵活,可以让我们快速且相当容易地完成我们需要的事情。回到 2 层系统的想法现在让我充满恐惧......祝你好运:)
    【解决方案3】:

    另一个不错的 n 层框架库是来自 components4developers 的 kbmMW:http://components4developers.com/

    【讨论】:

      【解决方案4】:

      我发现 RemObjects 非常有用。他们还在其上构建了 DataAbstract,但我没有使用它。

      【讨论】:

        猜你喜欢
        • 2013-04-19
        • 1970-01-01
        • 2010-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多