2010-08-14 93 views
4

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

这是一个相对较旧的大型应用程序,在我开始在那里工作之前已经创建和修改了很长时间。重构,除了什么时候需要改变之外,通常都没有考虑过。另外,业务逻辑也出现在两个实际层中......叹息。

物理变化并没有让我感到困扰,但逻辑上的变化将会是一种通过地狱的过程。为了尽可能平滑它,我想调查哪些Delphi组件更适合3层模型。

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

+1

这个计划的驱动因素是什么?例如,是否支持其他数据库或其他前端(移动,Web,.net)或云部署?这将给出一个更清晰的画面,例如在Delphi和/或中间层的Java之间进行选择。 – mjn 2010-08-14 08:17:55

+0

我基本上问过同样的东西:http://stackoverflow.com/questions/3431149/which-delphi-technology-to-use – 2010-08-14 11:50:21

+1

@mjustin,我们的客户有两个主要原因:他们希望能够部署到其他数据库,如果需要的话,他们也希望能够快速扩展,因为他们每年增长两位数。 Thx您的评论:-) – 2010-08-15 11:30:38

回答

3

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

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

+0

在学习如何使用RemObjects DataAbstract时,发现最难的问题是什么? – 2010-08-15 11:34:15

+0

我认为最难的部分是让DA框架运作。我会说文档不是很棒,但他们确实能够快速,丰富地回答大多数问题。 DA允许您创建几乎没有编码的3层系统。只需创建一个模式即可。不幸的是,我们做事情的方式阻止了我们这样做,但我们仍然发现该架构足够灵活,足以让我们快速而轻松地完成我们所需的任务。 回到2层系统的想法现在让我感到恐惧......祝你好运:) – norgepaul 2010-08-15 19:09:56

3

我发现RemObjects非常实用。他们也建立了DataAbstract,但我没有使用它。

0

你有没有想过的DataSnap XE?