您如何看待uniGUI,同时创建Web应用程序和win32应用程序的框架?

时间:2010-09-06 08:22:21

标签: delphi web-applications

我刚被the uniGUI website的火警重定向。在previous question我询问了Raudus和ExtPascal之间的比较。

现在这个unigui似乎是Raudus的替代品,而且还有一个优点,就是允许你使用相同的源代码同时编译win32 exe(当然,如果你只限于使用uniGUI批准的UI组件)。

我认为这是惊人的,即使这个想法一见钟情也不会使所有网络应用程序的纯粹主义者感到满意,但在我的意见中,拥有这种工具非常棒。

有许多(甚至很小的)应用程序,这些代码可以一次受益,获得双重UI。

无论如何,你对此有何看法?你认为它有未来吗?

附加注意:为了不开始一般性讨论,请尝试特别提及uniGUI,而不仅仅是一般性答案。谢谢。

4 个答案:

答案 0 :(得分:12)

两年前,我开始开发uniGUI(或将来可能采用的任何名称)。从那时起,它已经发展了很多。初始版本基于VCL for the Web。通过添加 ExtPascal Ext JS ,它已成为开发基于Delphi的Web应用程序的非常先进的工具。

uniGUI 只是将自己定义为Web应用程序开发框架。 Web应用程序的概念自首次启动以来一直存在争议。有些人声称Web是无状态的,但应用程序是有状态的,不应该将这两者混合在一起。然而,如今随着对Web应用程序的需求不断增加,这种概念仍然只是一种哲学观点。

越来越多的人希望从互联网上访问他们的桌面应用。公司希望其他分支机构可以访问其本地会计软件。安全公司需要一个用于访问控制软件的Web网关。这些都是满足不断增长的网络应用需求的例子。

我们可以将uniGUI视为Delphi VCL控件的抽象层,它将它们扩展到Web。与所有其他抽象层一样,它可以帮助开发人员专注于应用程序逻辑而不是开发工具本身。它试图将RAD方法完全集成到基于Delphi的Web开发中。

uniGUI的双重性质简直是一个优点。我指的是它能够使用相同的代码库将相同的应用程序部署到Web和桌面。此功能对某些开发人员可能有用,但对其他开发人员无用,只有那些专注于Web开发的人才能完全忽略它。

至于可扩展性,uniGUI和其他类似工具的最佳目标似乎是内部网,其中客户端数量是可预测的,连接速度不是问题。

也就是说,没有什么可以阻止开发人员开发针对互联网的网络应用程序。最后,客户端的所有 Ext JS 和服务器端的Delphi事件处理程序都是如此。这完全取决于您设计应用程序的智能程度以及管理资源的效率。如果你的每个会话消耗10 MB的内存,那么你很快就会耗尽内存。

总之,该框架将拥有一组用户,他们将最好地满足他们的需求。这里没有黑色或白色只有大的灰色区域。与任何其他工具一样,它取决于公司,特定项目和可用的部署选项,以确定它是否适合您。

答案 1 :(得分:5)

Web应用程序非常与GUI不同。混合两种方法的东西 更严重的简单形式或几个按钮我认为是错误的。

答案 2 :(得分:2)

我认为UniGUI的想法很棒。但我认为Embarcadero应该是开发人员的另一个选择,而不是独立选择。 Delphi开发人员总是想要一种简单的方法来创建Web应用程序,而且真诚的WebBroker非常糟糕。

答案 3 :(得分:1)

无论如何,你对此有何看法?你认为它有未来吗?

总体思路肯定有未来,如果只是在PT巴纳姆意义上。这个特殊的实现似乎没什么特别的 - 它没有什么能够让我成为解决我目前必须处理的任何问题的一个很好的解决方案。但后来,我发现胖客户端应用程序,尤其是传统的Delphi 2层应用程序,与网络应用程序完全不同。

如果uniGUI以另一种方式工作,我会更感兴趣,并为Delphi提供了一个可靠的MVC框架,然后将其扩展到Web。这样你可以更容易地将你的数据+业务逻辑+ GUI分成三个连接的部分,而不是传统的Delphi / RAD问题,即业务逻辑在GUI中全部纠结,然后Web应用程序很难开发,因为层“必须”分开。当你移动到网络时,通过让业务逻辑混合到GUI中,这就像“解决”这个问题一样。