阅读更多

6顶
2踩

移动开发

转载新闻 Web App 的挑战

2012-05-10 17:27 by 正式编辑 nemohq 评论(2) 有11018人浏览
Web App概念的兴起,起源于HTML5标准的逐渐成熟和大型互联网公司的推动。这其中包括百度的框计算、谷歌运行于Chrome上的Web App Store以及Facebook的HTML5项目“斯巴达”(Project Spartan)。前两个项目当前主要侧重于PC端,而Facebook的Spartan可以说主要是瞄准了移动端的用户市场。

一、究竟什么是Web App?

很多人从Web App字面上认为它就是运行在网页上的应用。可普通用户很难理解:应用是App,网页是Web,两个不同的东西是怎么结合呢?另外,综合当前的软件和硬件环境来看,显然不是所有的应用都能跑在网页上的。还有,应用要有应用的“样子”,Web App和普通的网页在UI和UE层面有比较大的差别……这种种的区别和不解造成的疑惑,让很多人认为Web App就是更像应用的WAP。那到底什么是Web App?

维基百科上Web App的定义是:
引用
A web application is an application that is accessed over a network such as the Internet or an intranet . The term may also mean a computer software application that is coded in a browser-supported language (such as JavaScript, combined with a browser-rendered markup language like HTML) and reliant on a common web browser to render the application executable.

我们来拆分一下这里面的几层含义

  1. Application:应用,为用户完成一个或多个功能而设计的程序。
  2. Internet or Intranet:运行于广域网或局域网之上。
  3. Browser-supported language:使用浏览器支持的语言。
  4. Web browser:运行于标准的浏览器解析引擎上。
移动端Web App和WAP有什么不同?最直接的区别就是功能层面。WAP更侧重使用网页技术在移动端做展示,包括文字、媒体文件等。而Web App更侧重“功能”,是使用网页技术实现的App。总的来说,Web App就是运行于网络和标准浏览器上,基于网页技术开发实现特定功能的应用。

二、Web App有众多的优点


第一、使用W3C标准的HTML语言开发,能够轻松实现跨平台,移动应用开发者不再需要考虑复杂的底层适配和跨平台开发语言的问题。与此同时,使用HTML来开发的Web App在投入上会大大的低于传统的Native App。

第二、基于当下开始普及流行的HTML5,Web App可以实现很多原本Native App才可以实现的功能,比如LBS的功能、本地数据存储、音视频播放的功能,甚至还有调用照相机和结合GPU的硬件加速功能。

第三、移动应用的迭代周期平均不到1个月,用户不需要频繁的重新下载与升级。而Web App则无需用户下载,并且和传统网站一样可以动态升级。

第四、Web App有App的特性,更有Web的特性。每一个Native App在当前的用户使用场景下是相对孤立的,而Web App则可以像传统互联网网页那样相互链接,从一个Web App直接跳转到另外一个Web App。这无论是从用户的使用体验层面还是从应用之间的数据传输来看都是非常不错的选择。

三、Web App当前也有很多的缺陷

1、首先是标准的规范尚未定案。

Web App的实现需要多个层面的标准配套,如WAC标准、Device API标准以及HTML5标准。在这些标准都尚未完善之前,Web App还无法实现Native App的常用功能,如摄像头的调用。

2、其次,不同浏览器支持的差异性将成为长久的问题。

在PC端Firefox、IE、Chrome等浏览器虽然都遵循HTML标准,但最终展示效果仍旧会有偏差。在移动端这种情况只会进一步加剧。比如HTML5标准中对input的类型进行了定义,其中包括时间型如type=datetime。不同的浏览器展示出来的最终效果千差万别。另外,各个浏览器对CSS3的支持程度不同,这和Native App相比,成为比较大的弱势。

3、最后,最大的问题就是移动设备浏览器的性能还不能支持与Native App体验媲美的Web App

体验不流畅和响应速度慢是Web App当前面临两个最大的硬伤。当前Web App主要使用第三方的JS框架来完成开发,其中国外比较知名的包括jQuery Mobile、Sencha Touch、JQMobi等。这些开发框架有着比较统一的特色,比如都是把代码写在一个网页文件内,不同的界面通过不同的DIV切换来展示。而这直接导致了Web App在界面切换过程中出现不流畅的情况。而这一问题必须随着硬件的发展和软件的优化来逐渐的完善。根据分析从存量智能手机和新手机发展的状况来看,想要从根本上解决这个问题,可能还需要等到2014年。

四、总结

面对Web App当前在优势和缺陷都十分明显的情况,开发者该如何选择?一方面是跨平台和低成本开发的巨大吸引力,另一面是似乎还缺少实用性。国内外开发者陷入到Native App VS Web App的巨大争论中。

而正是在这样的环境下,Hybrid App(混合型应用)的概念被提出。这种兼具Native App和Web App的优势又能将两者的缺陷最小化的移动应用开发模式成了一种全新的选择。国内外知名的Hybrid App移动应用开发框架有Phonegap、Appmobi以及AppCan等。从2011年底开始,这些移动应用开发框架逐渐进入移动应用开发者的视野。面对这种全新的选择,开发者还需要更深入的了解。虽然从学习到实用还需要一个过程,但是终究不用仅仅局限于Native or Web这种二选一的困惑中。Hybrid App正在悄无声息的挑战着Native App 和 Web App!

  • 大小: 15.9 KB
来自: WebAppTrend
6
2
评论 共 2 条 请登录后发表评论
2 楼 mengyancui 2012-05-11 15:56
phonegap这类的开发框架性能还是不行啊,从感觉还flash类似,很耗资源耨
1 楼 ispring 2012-05-11 09:56
引用
这其中包括百度的框计算??

这个还是算了吧

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Nehe的OpenGL教程电子书(chm格式)中文版-抓虾.chm

    Nehe的OpenGL教程电子书(chm格式)中文版-抓虾.chm

  • Re: 酷似抓虾的ruby on rail网站-猫爪

    通过在你的网站提供的 rss订阅服务我可以认识朋友,这也是网站粘性之一。否则像我现在可以毫无顾忌的从bloglines搬家到rojo和抓虾网。而更多自取相同的人可以组成圈子。甚至衍生更广一点,大家通过查看你的profile,...

  • 推荐一个在线收藏 RSS 的网站--抓虾

    摘要: 从这里进入抓虾 也许你以前对 RSS 已有所了解或者正在使用它,要是还不知道 RSS 是什么 ,那要补习一下了:  阅读全文--------------------------新闻:Firefox 3.5:很快 但还是不够网站导航: ...

  • 已故世界最大飞机AN-225降落视频

    世界最大飞机 世界最大飞机运输机,乌克兰- AN-225,已经证实在俄乌战争中被炮弹摧毁了。 这是它以前的样子。 这是它现在的样子。 手机拍的 AN-225 降落视频,像一只白色的大鸟。 世界最大飞机AN-225降落视频 | 抓虾

  • 抓虾网的架构

    抓虾网是一个提供RSS在线阅读服务的网站,由徐易客与谌振宇在2005年创办,我使用抓虾将近两个月的时间,后来由于抓虾不能抓取一些国外的RSS(Google Reader能抓取),同时RSS的更新速度也比较慢,同时UI/UE也比不上...

  • merry的共享空间 - 频道预览 - 抓虾

    JM模型I帧帧内预测流程 I帧只存在帧内编码,没有帧间运动估计,不用参考其他的帧,所以I帧具有同步作用,.付出的代价就是效率稍差,不过也十分必要的。 I帧帧内编码分为亮度编码和色度编码,需要完成预测,计算RD...

  • 如何做外链-利用Rss订阅网站

    网上有很多提供RSS聚合服务的网站,国内知名的有抓虾、鲜果、FeedSky和inezha等。 首先,我们得为我们的网站生成Rss文件(就是个指定格式的XML文件)。我们准备好一个网站内容的Rss文件...

  • 抓虾

    抓虾是一个RSS在线阅读订阅站点,它能帮助互联网用户方便的订阅、收藏、分享自己关注的博客与新闻,让网民不必东奔西走,即可第一时间获得这些资讯的更新消息。抓虾以其界面的美观简洁,功能的方便实用,性能的稳定...

  • ruby杂

    ruby杂 分享到... 复制网址邮件QQ空间新浪微博MSN腾讯微博人人网开心网百度搜藏谷歌Buzz搜狐微博腾讯朋友淘江湖网易微博豆瓣查看更多(96) 这是什么工具? JiaThis 分享到各大网站 复制网址收藏夹邮件谷歌...

  • 技术博客网站推荐

    终身学习是很有必要的,尤其是在这样一个技术快速迭代更新的时代。经常看看本文介绍的一些技术博客则是其中的一个...网站目前包括:博客、聚合资讯、小组、资源 / 工具导航 和编程挑战。伯乐在线 - 博客 (blog.JobBo

  • 十年前,我在抓虾

    前些天在抓虾老同事的群里聊些话题,才发现在抓虾的日子竟然已经过去十年了。如今还会有人提到抓虾,但往往是把它当成徐易容的一次创业失败的教训。但是对亲身参与的人来说,那段经历并不只是“一次失败的教训”。 ...

  • 抓虾-Part3 Stay hungry,stay foolish

    (utopia.zh@gmail.com)从抓虾网(http://www.zhuaxia.com/)给你推荐了一篇文章并留言,内容如下:朋友的留言内容:Stay Hungry Stay Foolish! Part3 Stay hungry,stay foolish 在最后一期《全球目录》(Whole ...

  • 少走弯路的十条忠告---转自抓虾

    1.买个闹钟,以便按时叫醒你。 贪睡和不守时,都将成为你工作和事业上的绊脚石,任何时候都一样。不仅要学会准时,更要学会提前。就如你坐车去某地,沿途的风景很美,你忍不 ...住下车看一看,后来虽然你还是...

  • 抓虾 老板体会。

    站在2005年、2006年的时候,这个东西看似是一样的,我们看觉得博客和空间差不多。但是后来发现这事是不对的,阅读器更强调的是内容,就是我要看到东西,内容本身对我来讲有价值的。比如说我喜欢看财经,这边喜欢看...

  • ETL工具Kettle介绍和一个例子 - 抓虾

    导读: 根目录 因为公司近期招了几个实习生,需要我来做一个关于Kettle的培训,准备了一些培训的资料,一个ppt,用于培训的,一个数据库备份和一个详细的操作文档,是一个小作业,不敢独享,发出来给大家share,...

  • 统计:抓虾热文的都是那些网站贡献的?

    统计:抓虾热文的都是那些网站贡献的? 信息时代的牛人,就是能处理大数据量的牛人,google 算一个, 抓虾也算一个。---------------------- 截止小虾发稿时止,抓虾已经从 4,751,300 个博客和新闻频道中累计抓取...

  • 高分项目 基于STM32单片机的宠物RFID阅读器源代码+项目资料齐全+教程文档.zip

    【资源概览】 高分项目 基于STM32的宠物RFID阅读器源代码+项目资料齐全+教程文档.zip高分项目 基于STM32的宠物RFID阅读器源代码+项目资料齐全+教程文档.zip高分项目 基于STM32的宠物RFID阅读器源代码+项目资料齐全+教程文档.zip 【资源说明】 高分项目源码:此资源是在校高分项目的完整源代码,经过导师的悉心指导与认可,答辩评审得分高达95分,项目的质量与深度有保障。 测试运行成功:所有的项目代码在上传前都经过了严格的测试,确保在功能上完全符合预期,您可以放心下载并使用。 适用人群广泛:该项目不仅适合计算机相关专业(如电子信息、物联网、通信工程、自动化等)的在校学生和老师,还可以作为毕业设计、课程设计、作业或项目初期立项的演示材料。对于希望进阶学习的小白来说,同样是一个极佳的学习资源。 代码灵活性高:如果您具备一定的编程基础,可以在此代码基础上进行个性化的修改,以实现更多功能。当然,直接用于毕业设计、课程设计或作业也是完全可行的。 欢迎下载,与我一起交流学习,共同进步!

  • node-v7.7.4-sunos-x86.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

  • 高分项目 基于STM32单片机+Labview的消防面罩设计源代码+项目资料齐全+教程文档.zip

    【资源概览】 高分项目 基于STM32单片机+Labview的消防面罩设计源代码+项目资料齐全+教程文档.zip高分项目 基于STM32单片机+Labview的消防面罩设计源代码+项目资料齐全+教程文档.zip 【资源说明】 高分项目源码:此资源是在校高分项目的完整源代码,经过导师的悉心指导与认可,答辩评审得分高达95分,项目的质量与深度有保障。 测试运行成功:所有的项目代码在上传前都经过了严格的测试,确保在功能上完全符合预期,您可以放心下载并使用。 适用人群广泛:该项目不仅适合计算机相关专业(如电子信息、物联网、通信工程、自动化等)的在校学生和老师,还可以作为毕业设计、课程设计、作业或项目初期立项的演示材料。对于希望进阶学习的小白来说,同样是一个极佳的学习资源。 代码灵活性高:如果您具备一定的编程基础,可以在此代码基础上进行个性化的修改,以实现更多功能。当然,直接用于毕业设计、课程设计或作业也是完全可行的。 欢迎下载,与我一起交流学习,共同进步!

  • node-v8.1.4-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

Global site tag (gtag.js) - Google Analytics