【问题标题】:Developing nested applications开发嵌套应用程序
【发布时间】:2009-11-05 12:00:33
【问题描述】:

我们正在考虑将我们的多个数据库应用程序转移到一个平台 - 可能基于网络。

我们一直在考虑的模型是有许多嵌套应用程序,如下所示:

1) 有一个“侧边栏”,用于管理应用程序的基本导航、搜索等。

2) 在侧边栏中进行选择会在显示的主要部分加载适当的应用程序。每个应用程序中的链接都可以调用其他应用程序,就像更改网页一样。

但是环顾四周,我看不到在 IntraWeb(我们的首选 - 托管在浏览器中)或 Delphi 中实现此功能的直接方法,除非将其全部编码为单个应用程序。

有什么建议吗?

【问题讨论】:

标签: delphi intraweb


【解决方案1】:

基于网络是否意味着浏览器?根据应用程序的类型,最好编写一个简单地使用 Internet 进行通信的传统 Delphi 客户端应用程序。这两种方法的一个例子是电子邮件:Outlook 与 Gmail。他们(显然)都使用互联网,但其中一个在客户端运行,另一个在“云”中运行。当然,可以说两者在技术上都是在客户端运行。

根据您对计划的描述,仅使用 Native Delphi 实现目标的一种非常简单的方法:

  • 每个应用程序都是一个单独的 EXE
  • 有一个“父”启动器 EXE
  • 启动器列出了可用的应用程序
  • 启动应用程序时,它的父级是(比如)启动器 EXE 中的 TPanel

【讨论】:

  • 基于网络的类型意味着浏览器。感知的应用程序逻辑需要前进、后退、链接和书签类型的行为。一种可能性是,与其专门为应用程序重新发明浏览器,不如拥有用户习惯的东西。然而,这涉及到我们目前在内部没有的技能组合 - 我们有 delphi。
  • 我宁愿说浏览器是对 Delphi 自 90 年代初以来提供的丰富客户端体验的再造。还有其他需要考虑的事情。将 TWebBrowser 控件直接嵌入到 Delphi 表单中非常容易,因此您可以根据需要在应用程序中捕获浏览器体验的任何部分。
【解决方案2】:

与其查看开发嵌套应用程序所需的环境和语言,不如查看使其工作所需的功能单元。尝试在 Delphi 和 intraweb 中编写模型。
所有应用程序通常共有的功能部分是菜单、安全性和 UI,将其添加到核心“管理器”中。
从 UI 中拆分业务逻辑。

看看 Joomla、Drupal 等 CMS 系统是如何构建的。尤其是在管理功能单元时。随着时间的推移,其中一些已经演变成完整的程序容器。

创建一个可以加载 dll 并向第一个应用程序添加功能的小型 cgi 应用程序。

【讨论】:

    猜你喜欢
    • 2014-09-08
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2010-11-11
    • 1970-01-01
    • 2016-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多