很多人问我Sencha Touch (百度百科Sencha Touch译者加) 和jQuery Mobile哪个更好。事实上,它两的区别就像是Web后台编程,PHP和Java。它们都能完成同样的功能,但其实它们是为不同的目的而创造的。
Sencha Touch基于web-kit浏览器并做了优化,而jQuery Mobile适用于一般浏览器。因为Sencha Touch做了优化,很多人觉得它比jQuery Mobile更棒。混合移动应用(类似用用Webview编程,译者注)会让Sencha Touch熠熠生辉,它会让移动应用非常流畅就像是用原生API开发的一样。但jQuery Mobile也会在不同的地方发光发彩的。与Sencha Touch只支持web-kit不同,jQuery Mobile在支持HTML5的浏览器工作的也是相当的漂亮。无论你是使用Windows,MAC OS,Android或是iOS系统,jQuery Mobile都能吸引你的眼球。
Sencha Touch vs jQuery Mobile
下面我将以我个人经验来谈谈它们的不同,这也许不会很客观。就个人而言我不会偏袒任何一方,下面的章节经按组进行比较,每组都有胜者。
第一组-行销和平台支持
Sencha Touch和jQuery Mobile都以HTML5框架著称。jQuery Mobile谦虚的说自己只是内建于所有流行的移动设备平台,而Sencha Touch则说自己是唯一能让为开发者在iOS,Android,BlachBerry,Windows Phone等更多的OS上开发漂亮应用的框架。老实说,这种夸大其词的广告让我失望。我还没有发现它说的那样好,Sencha Touch只能孤芳自赏了。
- 只支持web kit内核浏览器(据说这会在未来有所变化)
- 大家知道的,有很多移动应用框架比Sencha Touch好
jQuery Mobile
- 很多框架都不会为某一特定的平台做优化的,包括jQuery Mobile(据说1.4版本会做一些优化)
结论:jQuery Mobile胜
第二组-UI和视觉映像
正如您所见,Sencha Touch和jQuery Mobile在UI视觉是有些区别的。一个是完全的javascript驱动,而另一个是用HTML驱动的。这两种方式都可以展示漂亮的UI,但是Sencha 的UI更像是用原生API开发的一样(在混合应用程式中)。很不幸,它两在复杂UI程式中表现的就很糟糕了,尤其是jQuery Mobile.
Sencha Touch
- 在移动设备上,Sencha会比jQuery更加的流畅
- Sencha遵循MVC哲学,它不会让你写任何HTML代码,一切基于javascript
- Sencha 提供更多的UI元素和组件,比如说旋转
- Sencha支持SVG(可缩放矢量图形,译者注),对于游戏来说是个好事
- Sencha Touch IDE是付费的,虽然这个和UI没有关系。
jQuery Mobile
- 于Sencha不同,jQuery Mobile UI更像是web UI
- 要想展现jQuery Mobile UI只要在HTML中加入jQuery Mobile CSS即可,就像是jQuery UI框架的使用一样
- 使用Ajax会让有些开发者在页面特效处理方面感到困惑
- 使用CSS会让一些UI看起来很相似,要让UI表现的不一样得额外花费时间来处理。比如说SongMeanings.com网站中的mobile内容。
- 与Sencha Touch不同,jQuery Mobile得让你好好关心页面的构成,有时这是很麻烦的。所有都绑在了一起,这,时好时坏说不定。1.4版本也许会有所改善。
结论:Sencha Touch 胜
第三组-可用性,使用的难易
这是个完全不同的比较。jQuery Mobile是标记语言驱动,它是依赖于jQuery并很容易控制的。如果你喜欢MVC模式,那你就得选择Sencha Touch。当然这会带来付费的问题,至少这会让不喜欢用javascript的人不顺心的。最后,咱这组比较就是比较使用的难易的。
Sencha Touch
- 全都是javascript,新手会有些迷惑
- 很难debug
- 不容易上手
jQuery Mobile
- 如果你和大多人一样喜欢jQuery,你也会喜欢jQuery Mobile的
- 语法简单
- 可以用Backbone.js或Knockout.js来弥补MVC设计方面的缺陷
- 支持很多不同的主题,而且一切都可以用CSS来操作
- 任何IDE都可以开发
结论:jQuery Mobile胜
第四组-文档
再好的产品也会因此而被人们遗忘。它们两的文档都不错。Sencha Touch官方文档相当不错,jQuery Mobile文档的封面都是很漂亮的。但是,Sencha Touch的文档比jQuery Mobile的更好。
Sencha Touch
- 比jQuery Moblie文档更好,而且不会让人困惑。
- 内容不多
- 官方支持可不免费,也不会涉及IDE
jQuery Mobile
- 没达到Sencha Touch官方文档的水准
- 有博客,文章,论坛,Stackoverflow...等方式的支持
- 封面很漂亮
结论:Sencha Touch 胜
第五组-工具,插件,第三方支持
这个话题也是很重要的,好的开发工具和插件会让开发者更容易上手。
Sencha Touch
- 支持自家本地应用程序
- 支持主题包
- IDE要付费
jQuery Mobile
- Phonegap是支持本地应用的开发包,用jQuery Mobile开发Phonegap会让人感到有些怪
- 支持主题包,但支持的不全面,因为一些核心的CSS元素不容易更改,比如说已经被激活的元素
- 支持大量第三方插件,与jQuery插件兼容
- 比Sencha Touch更容易扩展
结论:平局,jQuery Mobile略胜一筹
最终比较
jQuery Mobile
优点
- 易开发
- 不错的第三方支持,插件就是知识,知识就是力量
- 易调试
- Stackoverflow
缺点
- 比Sencha Touch慢
- APP几乎是同样的UI,如果你是个能忍的UI设计师,那你就可以接受这种呆滞的UI
- 官方文档缺少一些东西,因为其在UI方面介绍的太多而欠缺在架构方面的介绍
使用场合
- 移动网站
- 简单的混合应用程序
代码例子
<!DOCTYPE html> <html> <head> <title>jQM Complex Demo</title> <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/> <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=no; target-densityDpi=device-dpi"/> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" /> <!--<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>--> <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script> </head> <body> <div data-role="page" id="index"> <div data-theme="b" data-role="header"> <h1>Index page</h1> </div> <div data-role="content"> </div> </div> </body> </html>
Sencha Touch
优点
- 运行非非常流畅,有中像是原生API开发的一样
- 有MVC结构
- 文档很完美
缺点
- 对于缺乏经验的开发者来说过于复杂
- 第三方支持太少
- 由于只支持webkit,所以除过混合应用程序外,对于一般程序来说作用不大
- IDE和支持都得付费
使用场合
- 建议在复杂的混合应用程序,特别是要求看起来像是原生API开放的程序中使用
代码例子
new Ext.Application({ name: 'MyApp', launch: function() { this.viewport = new Ext.Panel({ fullscreen: true, id : 'mainPanel', layout: 'card', items : [ { html: 'Welcome to My App!' } ] }); } });
它们两都是成熟的框架。jQuery Mobile 容易使用而且在大部分场合都能工作良好,但是如果你想优化优化混合移动应用程序,那你就选择Sencha Touch吧。
其它值得看看的HTML5移动应用框架:
- jQT(ex jqTouch)
- App Framework(ex jqMoby)
- Kendo UI
- Titanium App Accelerator
相关推荐
推荐3款强于Sencha Touch和jQuery mobile的webapp前端UI库.zip
webapp界面UI框架Sencha Touch 是WEB APP的界面UI组件库,明显比jquery Mobile快.zip
Sencha Touch目前世界上使用最广泛的HTML5开发框架,和JQuery Mobile组合可以实现近似于原生效果的移动应用.目前下载比较困难,特分析并收藏.
用SenchaTouch和jQueryMobile开发移动应用的过程对比[收集].pdf
运用Jquery Mobile与后台通信的一个例子,通过Jquery Mobile解决手机跨平台问题
资源名称:jQuery、jQuery UI及jQuery Mobile技巧与示例内容简介:《jQuery、jQuery UI及jQuery Mobile技巧与示例》包括jQuery、jQuery UI、jQuery Mobile以及jQuery插件四部分内容。第一部分介绍jQuery核心库,从...
jQuery mobile相册的一种样式
1.jQuery Mobile 是一个用于创建移动端web应用的的前端框架。 2.jQuery Mobile 构建于 jQuery 以及 jQuery UI类库之上,如果您了解 jQuery,您可以很容易的学习 jQuery Mobile。 3.jQuery Mobile 使用了极少的 ...
jQuery Mobile 是用于创建移动 Web 应用的前端开发框架。 jQuery Mobile 可以应用于智能手机与平板电脑。 jQuery Mobile 使用 HTML5 & CSS3 最小的脚本来布局网页。
作为jQuery Mobile的入门级读物,《jQuery Mobile快速入门》以示例方式讲解了jQuery Mobile的基本知识和核心特性,内容系统全面,便于理解。 《jQuery Mobile快速入门》总共分为10章,内容包括jQuery Mobile的基础...
原书名:jQuery, jQuery UI, and jQuery Mobile: Recipes and Examples 原出版社: Addison-Wesley Professional 作者: (荷)Adriaan de Jonge (美)Phil Dutson 译者: 包勇明 程学彬 出版社:人民邮电出版社 ...
jQuery Mobile音乐播放代码 为什么使用 jQuery Mobile? 通过使用jQuery Mobile 可以 "写更少的代码,做更多的事情" : 它可以通过一个灵活及简单的方式来布局网页,且兼容所有移动设备。 lamp 不同设备使用了...
JQUERYMOBILE 提示框 用语JQUERYMOBILE 移动开发的提示框
本资源以Hello Word为例,里面包含了jQuery Mobile框架所需要的部署文件。
jQuery Mobile开发的移动新闻阅读器,HTML5技术配合jQuery MobilejQuery Mobile jqm 新闻阅读器 jqm图标更换 jQuery Mobile jqm 新闻阅读器 jqm自定义按钮的图片以及header和footer的定位
jQuery Mobile API文档。jQuery Mobile是jQuery框架的一个组件(而非jquery的移动版本)。jQuery Mobile是一款基于HTML5的用户界面系统,旨在使所有智能手机,平板电脑和桌面设备上都可以访问的响应网站和应用。...
jQuery Mobile快速入门.pdf
jQuery Mobile是jQuery在手机和平板设备上的版本,用于创建针对智能手机和平板电脑的跨设备Web应用。 jQuery Mobile旨在“为jQuery社区创建一个优雅的能够兼容当前所有主流移动平台的HTML5 UI库”。jQuery Mobile...
jQuery mobile滑动式的标题导航
“JQuery Mobile学习助手”...对于JQuery Mobile的初学者,可以从中学习JQuery Mobile的所有接口与组件的功能,同时通过范例进行练习;对于JQuery Mobile开发人员,“JQuery Mobile学习助手”可以作为平时的开发手册。