【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

XML 是用户界面 (UI) 开发的未来吗?

  • 2007-04-09
  • 本文字数:1588 字

    阅读完需:约 5 分钟

或者是 JavaScript?新一茬的桌面用户界面框架有一个共同的趋势:基于 XML,并具备某种程度的 JavaScript 支持。在此,让我们简要地看看 AJAX,WPF/XAML,Flex/MXML 和 Firefox 的 Gran Paradiso。

首先登场的是 AJAX ,Web 2.0 狂潮的典范。作为一门充分利用现有 HTML 和 JavaScript 的新技术,几乎没有理由不使用 HTML。尽管目前还不适合桌面应用程序的开发,但它的确为后来者搭建了一个舞台。

微软把宝重重地押在了一门新的基于 XML 的语言上:可扩展应用程序标记语言(Extensible Application Markup Language,XAML)。传统的 Windows 开发者可以通过 Windows Presentation Foundation(WPF) 使用它。在 XAML 中 WPF 更象 ASP.NET,被用于界面表现,而其它的,如 C#或 VB,被用在代码分离的文件中进行事件处理。

除了技术区别之外,XAML 还从根本上改变了用户界面设计的开发循环。用户界面专家和图形艺术家可以使用 XAML 编辑器(如 Expression Blend ZAM 3D )创建用户界面,然后将文件移交给使用 Visual Studio 的开发人员。至少在理论上,开发人员可以不用再根据那些使用 Visio 或 Photoshop 拼凑的非交互性截屏进行工作。从 ASP.NET 相当令人迷惑的成功上可以判断,它的效果令人起疑,但是至少存在潜力。

XAML 的故事并没有在这儿打住。微软同样期望通过 Windows Presentation Foundation/Everywhere(WPF/E)获得跨平台的支持。这个产品开始将以 JavaScript 作为它的程序、事件处理语言,在今后的版本中将支持公共语言运行时(CLR)。它可以被视为其他浏览器驻留框架(如 Flash/Flex)的直接竞争对手。

关于 XAML 技术需要留意的是,这些设计器目前都还没有真正意义上成型的形式。Expression Blend 目前只是处于预发布阶段。今年晚些时候,VS Orcas 将到达 Beta 版。在此之前,Visual Studio 将不会有任何多于 CTP(Community Technology Preview,社区技术预览版)的功能。

接下来的是 MXML。它是在 Adobe Flex 中被使用的表现语言,同样基于 XML。它结合了 JavaScript 的派生产品——ActionScript,最初它是由 Macromedia 在 2004 年发布的。尽管工具的支持经过了多年改进,但是它仍然被桎梏于浏览器和 Flash 播放器中。Adobe 实验室想通过 Apollo 计划来改变这一切。 Apollo 计划的目标就是创建一个将 Flex 从浏览器解放的跨平台运行时(Runtime),这样它就可作为一个单独的桌面应用程序运行。实际上,这是剽窃了 Java 最初的剧本,他们将飞机开入了微软的客厅。凭借出众的界面水准,它们有可能赢得比赛。

最后是 Firefox 带来的新礼物 Gran Paradiso 。与微软不同,它为 Web 引入了一门新语言。也不像 Abode,它一开始就创建了一个新的运行时。Firefox 团队忠于它们目前拥有的东西。Gran Paradiso 使用与 AJAX 相同的底层技术——HTML 和 JavaScript,并且它仍然生活在浏览器之中。区别是,它计划提供 DOM 存储、脱机执行和同步模型等功能,该模型允许 Web 应用程序在部分或完全的非连接模式下运行。

过于依赖一个特定的浏览器可能最终会击沉 Gran Paradiso。不像 WPF/E 和 Apollo 使用跨平台的运行时,它们期望用户不需要为跨平台这些问题烦心,Firefox 是一个高度从应用程序自身夺取屏幕空间的可视化帧。那些使用 IE、Safari 或 Opera 的用户,肯定会对于必须使用 Firefox 感到些许不安。

结合 XML 和某种形式的 JavaScript 成为了这些新框架的主旋律。 JavaScript 到底是下一个超级语言,还只是一个短期的异常?

译者简介:胡键是InfoQ 中文站的志愿者翻译,自2000 年西安交通大学硕士毕业后一直从事软件开发。2002 年开始使用Java,在项目开发中经常采用OpenSource 工具,如Ant、Maven、Hibernate、Struts 等,目前正在研究信息集成方面的规范和技术。可以通过 jianhgreat AT hotmail.com 与他联系,或访问博客: http://foxgem.javaeye.com/ 。加入 InfoQ 中文站志愿者翻译队伍,请邮件至 china-editorial@infoq.com

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2007-04-09 07:553870
用户头像

发布了 255 篇内容, 共 54.4 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

远程办公团队如何沟通?

王字 Wannz

远程办公 wrh 居家办公 线下办公 soho

2022年低代码的变化与趋势

WorkPlus

【网络安全】一款针对Flutter的逆向工程分析工具

H

网络安全 逆向分析

阿里云EMAS 1月产品动态

移动研发平台EMAS

阿里云 程序人生 移动开发 #EMAS

手把手教你使用HarmonyOS本地模拟器

HarmonyOS开发者

HarmonyOS DevEco Studio

利用鸿蒙JavaUI 框架的 WebView 加载本地冰墩墩网页

宇宙之一粟

鸿蒙开发 2月月更

【连接平台」企业告警信息通过机器人同步至钉钉群

钉钉开发者

连接器 钉钉应用开发 钉群

IT人的笔记本——全面了解 Jupyter

dongge

jupyterlab

Java如何实现消费数据隔离?

CRMEB

LiveVideoStackCon | 面向在线教育业务的流媒体分发演进

有道技术团队

音视频

MySQL 是如何实现RC事务隔离级别的

华为云开发者联盟

MySQL ReadView 事务隔离 RC事务隔离 Read Committed

恒源云(GPUSHARE)_替代MLM的预训练任务,真的超简单吗?

恒源云

人工智能 自然语言处理 深度学习

圆桌会议:如何避免踩到移动研发中,效能提升那些坑

王字 Wannz

移动开发 迭代

小程序框架与平台编译对比

王字 Wannz

小程序 百度智能小程序 头条小程序 finclip 小程序框架

FinClip 的 2021 与 2022

王字 Wannz

finclip 小程序容器 小程序开发 小程序管理平台

Camtasia卡点相册视频教程

淋雨

Camtasia 录屏软件

OpenHarmony移植案例:如何适配服务启动引导部件bootstrap_lite

华为云开发者联盟

开发板 OpenHarmony startup子系统 bootstrap_lite

OCR技术用于在线身份认证的运营效果分析

OCR

2022年了循环是什么?

謓泽

循环语句 C'语言 2月月更

各项结果排名第一!百度内容技术架构团队在国际向量检索大赛BigANN中斩获佳绩

百度Geek说

百度 内容 前端 后端

FinClip 与 uniapp:轻应用平台与前端开发框架

王字 Wannz

小程序 uniapp 移动开发 finclip

FinClip 与 mPaaS:轻应用平台与移动应用开发平台

王字 Wannz

小程序 移动开发 mPaaS finclip 小程序容器

架构实战营:模块七作业

Geek_93ffb0

「架构实战营」

2021盘点 | 云主机年度榜单出炉,Top5花落谁家?

博睿数据

开源商业模式促进金融业科技生态的发展

王字 Wannz

小程序 开源 IT 金融

有奖调查| 2022 Apache Pulsar 怎么过,你们说了算

Apache Pulsar

开源 云原生 中间件 Apache Pulsar Apache Pulsar 社区

延迟任务场景,该如何提高吞吐量和时效性

华为云开发者联盟

redis 延迟任务 低延迟 Redis 消费队列

[架构实战营]第七模块

Vincent

「架构实战营」

灵活地横向扩展:从文件系统到分布式文件系统

博文视点Broadview

分布式进阶(二十三):Nginx 服务器应用详解

No Silver Bullet

nginx https 正向代理与反向代理 SSL证书 2月月更

低代码OR零代码,企业如何选择自身所需的软件开发平台?

WorkPlus

XML是用户界面(UI)开发的未来吗?_Java_Jonathan Allen_InfoQ精选文章