AppML 历史

1999 年,Refsnes Data 开发了 AppML 的第一个版本。

那时,AppML 已经基于 Web 客户端和 Web 服务器之间的 HTTP 请求通信。后来这种方法被称为 AJAX。

2000 年 9 月,为一家挪威大客户的开发项目启动。该项目的目标是仅使用 AppML 将庞大的信息系统(大约 300 个应用程序)从 Windows 桌面应用程序转换为现代 Internet 应用程序。

基于 AppML 的系统于 2001 年推出,比计划提前几个月,作为世界上第一个商业 AJAX 应用程序。该项目取得了巨大的成功,与普通 Web 开发相比,开发时间减少了 75%。从那时起,新的应用程序不断增加,系统现在涵盖了 1000 多个正在运行的应用程序。

2015 年 2 月,W3Schools 重新推出 AppML 作为新产品,向公众开放。

AppML 设计目标:

  • AppML 应用程序必须在 Internet 上运行
  • AppML 应用程序必须独立于平台
  • AppML 应用程序必须仅使用 Internet 标准(HTML、CSS、JavaScript)
  • AppML 应用程序必须支持各种应用程序需求
  • AppML 应用程序必须是自描述的
  • AppML 应用程序必须易于开发、维护和更改
  • AppML 应用程序必须经得起未来考验

以下段落描述了 Refsnes Data 对未来 Web 应用程序的最初设想 (1999)。


可执行文件将消亡,JavaScript 将继续存在

已编译的可执行文件(从 C 或 Java 等语言编译而来)无法在不同的硬件上运行。

可执行文件(EXE 文件、ActiveX 和 COM 对象、DLL 文件)是阻止开发可在 Internet 上运行的应用程序的组件。

未来的应用程序将不会使用或依赖客户端计算机上安装的可执行文件或任何其他组件。

我们的建议:

仅使用 HTML、CSS 和 JavaScript 编写您未来的应用程序。

确保您未来的应用程序可以在任何网络浏览器中运行。


Web 应用程序将成为 Internet 服务

历史上充满了大型、专门构建的应用程序。其中许多很快就死了,因为它们无法承受需求变化。

应用程序应该是灵活的、通用的,并且可以优雅地适应变化,而不会崩溃或破坏。

应用程序应该能够从每天支持数个请求扩展到数百万个请求。

应用程序应该能够从一台服务器传播到多台服务器,或者在服务器之间移动,而不会破坏应用程序。

应用程序应该能够与其他应用程序协作。

应用程序不应包含大量代码。

应将应用程序分解为更小的服务,这些服务易于创建和维护。

应用程序应该是一组 Internet 服务,可以将数据返回到提交的 Internet 请求。

应用程序应通过标准 Internet 协议请求服务,而不需要与服务器保持永久连接。

我们的建议:

使用基于 Internet 的 SOA(面向服务的架构)编写您未来的应用程序。

使您的应用程序服务通用且灵活,并准备好处理不同类型的请求。


未来的应用程序将易于创建和编辑

客户端和服务器将以易于理解的方式交换数据。

应用程序将不会被编码,如果可以避免。

应用程序将通过编辑模型创建和修改,而不是通过编辑代码。

应用程序描述将被人类读取。

应用描述将是自描述的。

应用程序将由用户编写,而不是程序员。

我们的建议:

使用人类可读的文本文件来描述服务,并通过执行这些描述来提供服务。

使用文本文件(如json文件)来描述应用程序。

使用文本文件(如JSON文件)进行交换数据。

使用HTML,CSS和JavaScript来执行应用程序。


三个小 Web 开发者...

曾几何时,三个小网站开发人员正在开发一个新网站。

1. 第一个 Web 开发人员使用的是 AppML。

2. 第二位 Web 开发人员正在使用他最喜欢的服务器编程语言。

3. 三是使用专业的企业网络开发框架。

第一个 Web 开发人员在两天内启动并运行了一个演示。 在与用户合作后,一个现有的原型在一周内就准备好了。 经过两周的测试,一个智能、快速且易于使用的网站已准备好发布。

第二位 Web 开发人员在 6 个月后准备好了他的网站。 但是万维网改变了它的要求,并没有得到满足。 Web 开发人员无法对他的项目进行重大更改,因为它包含太多代码。 于是他开始了第二版的开发。

第三位 Web 开发人员从未成功完成他的工作。 专业的 Web 开发框架很难使用,很难理解,而且几乎无法测试。

看看第一个开发者是怎么做的