阅读更多

6顶
2踩

移动开发

转载新闻 Web App 的挑战

2012-05-10 17:27 by 正式编辑 nemohq 评论(2) 有11170人浏览
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 个博客和新闻频道中累计抓取...

  • 基于FPGA的四相八拍步进电机控制系统设计:集成交付、正反转、加速减速及调速功能

    内容概要:本文详细介绍了基于FPGA的四相八拍步进电机控制系统的开发过程。主要内容包括:1. 使用VHDL和Verilog编写LED显示屏驱动代码,用于显示角度、学号和姓名等信息;2. 实现步进电机的正反转控制,通过状态机管理相序变化;3. 开发加速减速控制模块,确保电机启动和停止时的平稳性;4. 设计调速功能,通过调节脉冲频率实现速度控制。此外,文中还讨论了调试过程中遇到的问题及其解决方案。 适合人群:对FPGA开发和步进电机控制感兴趣的电子工程师、嵌入式系统开发者以及相关专业的学生。 使用场景及目标:适用于需要高精度运动控制的应用场合,如工业自动化、机器人技术和精密仪器等领域。目标是帮助读者掌握FPGA控制步进电机的基本原理和技术细节。 其他说明:文中提供了详细的代码片段和调试经验分享,有助于读者更好地理解和应用所学知识。同时,作者还提到了一些实用技巧,如通过PWM调节实现多级变速,以及如何避免步进电机的共振问题。

  • Android开发:基于SQLite的日历备忘录记事本项目详解与实现

    内容概要:本文详细介绍了基于Android Studio开发的日历备忘录记事本项目,涵盖日历查看、添加备忘录、闹钟提醒和删除备忘录等功能。项目使用SQLite数据库进行数据存储,通过CalendarView、EditText、Button等控件实现用户交互,并利用AlarmManager和PendingIntent实现闹钟提醒功能。此外,项目还包括数据库的设计与管理,如创建DatabaseHelper类来管理数据库操作,确保数据的安全性和完整性。文章还探讨了一些常见的开发技巧和注意事项,如时间戳的使用、手势监听的实现等。 适用人群:适用于初学者和有一定经验的Android开发者,尤其是希望深入了解Android开发基础知识和技术细节的人群。 使用场景及目标:该项目旨在帮助开发者掌握Android开发的基本技能,包括UI设计、数据库操作、闹钟提醒机制等。通过实际项目练习,开发者能够更好地理解和应用这些技术,提升自己的开发能力。 其他说明:文中提到一些进阶任务,如用Room替换SQLite、增加分类标签、实现云端同步等,鼓励开发者进一步扩展和优化项目。同时,项目源码公开,便于学习和参考。

  • Matlab实现基于SVM-Adaboost支持向量机结合Adaboost集成学习时间序列预测的详细项目实例(含完整的程序,GUI设计和代码详解)

    内容概要:本文档详细介绍了一个基于SVM(支持向量机)和Adaboost集成学习的时间序列预测项目。该项目旨在通过结合这两种强大算法,提升时间序列预测的准确性和稳定性。文档涵盖了项目的背景、目标、挑战及其解决方案,重点介绍了模型架构、数据预处理、特征选择、SVM训练、Adaboost集成、预测与误差修正等环节。此外,文档还探讨了模型在金融市场、气象、能源需求、交通流量和医疗健康等多个领域的应用潜力,并提出了未来改进的方向,如引入深度学习、多任务学习、联邦学习等先进技术。 适合人群:具备一定机器学习基础的研究人员和工程师,特别是那些从事时间序列预测工作的专业人士。 使用场景及目标:①用于金融市场、气象、能源需求、交通流量和医疗健康等领域的复杂时间序列数据预测;②通过结合SVM和Adaboost,提升预测模型的准确性和稳定性;③处理噪声数据,降低计算复杂度,提高模型的泛化能力和实时预测能力。 其他说明:文档不仅提供了详细的理论解释,还附有完整的Matlab代码示例和GUI设计指导,帮助读者理解和实践。此外,文档还讨论了模型的部署与应用,包括系统架构设计、实时数据流处理、可视化界面、GPU加速推理等方面的技术细节。

  • #游戏之追逐奶酪123

    #游戏之追逐奶酪123

Global site tag (gtag.js) - Google Analytics