将网络转变为一个真实的应用平台:新技术、新出现的趋势和缺少的部分外文翻译资料
2022-10-26 10:04:07
英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
将网络转变为一个真实的应用平台:新技术、新出现的趋势和缺少的部分
Matti Anttonen, Arto Salminen and Antero Taivalsaari
Tommi Mikkonen 诺基亚研究中心
坦佩雷理工大学 Visiokatu1
Korkeakoulunkatu1 FI-33720 Tampere, Finland
FI-33720 Tampere, Finland antero.taivalsaari@nokia.com
firstname.lastname@tut.fi
摘要
万维网已经从一个简单的文件浏览和发布环境到丰富的软件平台,在桌面风格的应用正日益成为一等公民演变。网络的面向文档的起源仍然在许多领域明显,虽然,传统上一直难以组成真正的交互式Web应用程序,而无需使用插件组件或浏览器扩展,如Flash。然而,正在进行的标准化工作和新兴技术如HTML5,JavaScript的2.0和WebGL正在迅速改变Web应用程序开发的前景。在本文中,我们提出了一些事先挑战和不足之处,并说明如何利用新技术可用于解决许多问题。该研究是基于我们动手建立其中多个不同的Web应用程序开发技术的已经广泛使用的各种基于网络的系统的经验。
分类和主题描述
D.2.0 [软件工程]:一般–标准。D.2.2[软件工程 ]:设计工具和技术–
软件库和用户界面。
一般条款
性能,设计,试验和标准化。
关键词
Web编程,JavaScript,HTML5,WebGL。
1.引言
正在进行的模式转向基于Web的软件,从根本上改变了软件行业的景观。在网络软件的新时代,网络上的应用程序不断地活跃在网络上。这样的应用程序和服务包括数据、代码和可以位于的其他资源。
许可,以使个人或课堂使用的所有或部分的数字或硬拷贝的许可,无需收取的费用,该副本是不作或分发的利润或商业优势,该副本承担此通知和第一页的全部引用。另外复印,或重新发布,发布的服务器上或分配清单,需要事先特定的权限和/或费用。
国资委会,3月21-25日,2011,台中,台湾。
版权所有2011 ACM 978-1-4503-0113-8 / 11 / 03美元的世界10.00.anywhere。应用程序不需要安装或手动升级。理想情况下,应用程序还支持用户协作,即允许多个用户在全球范围内进行交互和共享相同的应用程序和数据在互联网上。
作为应用平台的使用网页浏览器已被广泛在Sun Microsystems实验室在热闹的内核项目的环境影响(请访问:http://www.lively-kernel.org/)。各种障碍和挑战被认定为这一努力[19]的一部分。然而,一些新近推出的标准,技术和工具也有更实际编写在Web浏览器中没有任何插件组件或扩展运行的交互式应用程序。
在一般情况下,网络浏览器越来越多地被用来作为一个真正的应用平台 - 有效假设操作系统为广大的终端用户应用的作用。考虑到Web浏览器的卑微作为一个简单的文档查看和发布环境,而事实上,在Web上的编程能力,在很大程度上是一种事后的想法,而不是一个精心设计的功能下,网络改造成一个非常受欢迎的软件部署平台相当惊人的。事实上,这种转变是在计算机和软件工程的现代历史上最深刻的变化之一。
在本文中,我们分析了多远,我们是从实现的愿景,使用网络浏览器作为一个统一的软件开发和部署平台。这里介绍的工作建立在我们前面的工作,它是集中发展经验,从各种Web开发项目的基础上,我们进行了(见 http://lively.cs.tut.fi/)。许多这些项目都集中发展的混搭,结合内容从不同的网站[ 11,14 ]。我们也研究使用JavaScript作为一门真正的编程语言对客户端和服务器端(10,12,和调查使用JavaScript在移动设备[ 13 ]。最近,我们已经放大显示3D内容的基于浏览器的应用程序,这个应用程序部署[ 18 ]影响的能力。
论文结构如下。我们开始与一个简短的历史,并重新审视一些早期提出的最明显的局限性和缺点的网络作为一个应用平台的总结。然后,第3节介绍了一些最近的技术进步,将网络转化为一个真正的应用平台。第4部分评估余下的挑战,并提供指导未来的工作。最后,第5节给出了我们最后的结论。
2.背景
到一个编程环境的网络的转变并没有发生一夜之间。在下面,我们给出了一个快速的概述,网络的历史,然后讨论了一些关键问题和缺点,可以认为是有害的网络应用程序开发。
2.1网络短历史
万维网的演变-或是简单的网络-从一个文档查看程序到一个应用程序平台已逐渐发生。在高层次,网页的演变已经从简单的,“经典”的网页与文本和静态图像,只有动画的多媒体网页与插件丰富的互联网应用程序(RIA)。至少在进化过程中的以下阶段可以识别[ 19 ]:
在一开始,网页是真正的网页,或网页或形式的结构化文件,主要包含文字与一些穿插静态图像没有动画或任何互动内容。网页之间的导航是基于简单的超链接,每一次用户点击链接时,都有一个新的网页加载。
在第二阶段,网页变得越来越互动。页面丰富了动画图形和插件组件,允许更丰富的内容显示。导航已不再仅仅是基于连接,浏览器和服务器之间的通信变得越来越先进。JavaScript脚本语言,介绍在Netscape Navigator 2.0B版本1995十二月,能建立动画,互动内容更容易。插件元件如使用闪光灯,冲击波和QuickTime的迅速蔓延,让先进的动画、电影片段和音轨插入到网页中。在这个阶段,网络开始移动的方向是不可预见的,它的设计师,与网站表现更像是多媒体演示,而不是传统的页面。
最近,我们已经进入了三分之一阶段,网页越来越将功能从传统的桌面应用程序的熟悉。该技术用于这样的富互联网应用(RIA)创作相结合的两个重要特征:互动合作。通过合作,我们指的是“社会”方面,允许大量的人进行合作,并在网络上共享相同的数据,应用和服务。同样重要的是,但不公开注意的方面,最近的技术是互动。现在有可能建立一个像桌面应用程序那样的网站,比如允许网页在一次更新一个用户界面元素,而不是要求整个页面每次都要更新一些变化。这种新的系统往往会避开链接导航,利用直接操作技术,熟悉的桌面风格的应用程序,而不是。此外,一些系统提供的应用程序开发功能,内置的功能。例如,脸谱网网站(http://www.facebook.com/)有其自己的应用描述语言,可用于创建脸谱网页面的Web应用程序。
上面讨论的三个阶段是不相互排斥的,和网页的所有三个阶段并存于网络上的今天。今天的大多数商业网页代表第二阶段。然而,随着新的网络应用开发技术和系统被频繁的介绍,更丰富的网络应用的趋势正在逐渐明朗化。这已经引起了各种新的工具,技术和标准化的活动,使它更实用,使用网络作为一个真正的应用平台。
2.2列出的缺点
技术报告的编写在太阳微系统公司实验室作者作为应用平台[ 19 ]提出了一系列的网站目前存在的不足。这些不足之处总结如下。
用户交互问题。网络浏览器的可用性问题是交互式网页应用开发中的一个明显的问题。在这方面的问题归结为三个基本问题:(1)的网络浏览器,(2)存在的一些浏览器的功能,在实际应用的背景下,在语义上存在的问题,和(3)对于重要的用户交互功能,如剪切/复制/粘贴、拖放、打印等,缺少可移植的解决方案。幸运的是,这些问题相对容易解决。基本上,为了支持应用程序的直接操作和桌面风格的用户交互,我/模特的网络浏览器需要加强和补充与熟悉的功能,从世界的桌面应用程序。
性能问题。直到最近,JavaScript虚拟机,浏览器的图形库的实现,并在商业Web浏览器原生函数绑定很慢。然而,当人们开始在网络上运行显着的桌面式应用程序时,这些性能问题变得越来越明显,引发了一个迫切解决问题。在过去的几年中,高性能JavaScript引擎如谷歌的V8引擎,苹果的金鳞鱼,微软的脉轮和渲染引擎的许多改进都极大地提高了Web浏览器的性能特别是计算密集型的应用。
网络和安全问题。网络浏览器的网络和安全问题产生于网络浏览器和“一个尺寸适合所有”浏览器安全模型的文档的性质的组合。关于浏览器安全性的决定主要取决于网站(来源),该网站的文件被加载,而不是由文档或应用程序的特定需求。此外,网络应用程序运行在一个应用程序无法访问主机计算机资源的应用程序中。因此,构建应用程序的可能性,利用主机系统的能力已被限制。
互操作性和兼容性问题。网络浏览器仍然有很多兼容性问题。浏览器兼容性问题严重依赖于标准化。然而,一些浏览器厂商故意忽略标准,并提倡自己的解决方案。为了提高兼容性,自主开发的浏览器兼容性测试套件,类似于用于java平台的测试套件,将是非常有价值的。当前的浏览器兼容性测试,如酸试验(HTTP:/ / www.acidtests。org /),仍然相对有限和不发达。
开发和测试问题。从传统的应用程序的Web应用程序的过渡将导致一个转变,从静态的编程语言如C,C 或C #向动态编程语言如JavaScript、PHP和Python。由于主流的软件开发人员,也许更重要的是软件工程方法的开发人员往往不知道静态和动态的编程语言之间的基本开发风格的差异,有必要在这方面的教育。动态语言的趋势已被保尔森[ 15 ]更广泛地讨论。
部署问题。网络的主要好处之一是即时全球部署:任何在网络上张贴的神器都可以立即访问任何有网络浏览器的世界上的任何人。这种“即时满足”的维度将彻底改变软件应用的部署和分发,并将意味着在软件行业几乎每个人都会带来显著的商业模式变化。
3.新趋势和新技术
在本节中,我们将以一系列最重要的技术和措施,以改善网络的应用为应用平台。我们将简要总结HTML5 [ 23 ]–也许最著名的即将到来的标准Web浏览器领域展开讨论。然后,我们将看看JavaScript语言标准化的进展。我们还将讨论–WebGL的跨平台Web标准的硬件加速3D图形。在我们看来,WebGL是一个最令人兴奋的,但大多仍被忽视,新的标准将大大改变感知能力的Web浏览器和Web应用更普遍。最后,我们看了一些新的系统和实现,有显着先进的国家的最先进的网络应用程序开发在过去几年里。
3.1 HTML5
即将推出的HTML5标准[23]补充了很多新的特性现有的HTML标准的能力。虽然HTML5是一种通用的网页标准,许多新的功能以使Web桌面风格的Web应用程序变得更美好旨在正视。相比于早期版本的HTML规范时,有无数的添加。首先,新标准将延长组可用的标记标签具有重要的新元素。这些新元素使之可能的,例如,直接嵌入音频和视频到网页。这将消除需要使用的插件组件,例如闪光灯这种类型的介质。 HTML5标准还将引进各种新的接口和API将用于JavaScript应用程序。新的功能如表1。
浏览器历史管理。 |
帆布元素和原料药。一个程序(如反对声明)2D图形API定义形状和位图,直接呈现在Web浏览器中。 |
内容可编辑属性。属性使得它可以创建可编辑的网页文件。 |
跨文档消息。新的跨文档消息传递功能允许网页/应用程序以一种安全的方式进行通信,以保证页面从跨站点脚本攻击中进行通信。 |
阻力和下降。拖放功能。 |
地理位置。地理定位API定义了一套操作和数据元素访问地理位置信息(如GPS定位)。 |
索引的分级密钥值存储(以前 websimpledb)。 |
本地SQL数据库。数据库可以被用于存储本地数据,其内容可以访问使用SQL的一个变种。 |
MIME类型和协议处理程序的注册。 |
微数据。微观数据的目标是提供一个简单的方法嵌入到HTML文档中的语义信息。 |
离线存储库。离线存储数据库将使应用程序来访问他们的数据,即使当网络连接不可用(http:/ / www.w3 ORG / TR /离线webapps /)。 |
定时媒体播放。 |
表1.一些HTML5相关的新功能
为了总结出许多新的应用程序的意图,他们的目标是明确的帮助在浏览器转换成一个编程环境。许多这些设施对传统的超文本文档没有什么意义,但是在网络浏览器中运行时是非常重要的。
<strong
剩余内容已隐藏,支付完成后下载完整资料</strong
资料编号:[154009],资料为PDF文档或Word文档,PDF文档可免费转换为Word