Html5 移动应用软件开发框架 JqueryMobile SenchaTouch 介绍

一、JqueryMobile 介绍

  jQuery Mobile 是 jQuery 在手机上和平板设备上的版本。

  jQuery Mobile 不仅会给主流移动平台带来 jQuery 核心库,而且会发布一个完整统一的 jQuery 移动 UI 框架。

  支持全球主流的移动平台。此框架简单 易用。页面开发主要使用标记,无需或仅需很少 JavaScript。 此框架简单易用。页面开发主要使用标记,无需或仅需很少 JavaScript。

 

 

 

二、SenchaTouch 介绍

  前不久基于 JavaScript 编写的 Ajax 框架 ExtJS,将现有的 ExtJS 整合 JQTouch、Raphaël 库,推 出适用于最前沿 Touch Web 的 Sencha Touch 框架,该框架是世界上第一个基于 HTML5 的 Mobile App 框架。

    同时,ExtJS 更名为 Sencha,JQTouch 的创始人 David Kaneda,以及 Raphaël 的创始人也已加盟 Sencha 团队

 

 

三、JqueryMobile SenchaTouch 对比

很多人问我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方面介绍的太多而欠缺在架构方面的介绍

使用场合

移动网站

简单的混合应用程序

代码例子

01    

02    <html>

03        <head>

04            <title>jQM Complex Demotitle>

05            <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>

06            <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"/>

07            <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" />

08            

09            <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js">script>    

10        head>

11        <body>

12            <div data-role="page" id="index">

13                <div data-theme="b" data-role="header">

14                    <h1>Index pageh1>

15                div>

16       

17                <div data-role="content">

18       

19                div>

20            div>    

21        body>

22    html>

Sencha Touch

优点

运行非非常流畅,有中像是原生API开发的一样

有MVC结构

文档很完美

缺点

对于缺乏经验的开发者来说过于复杂

第三方支持太少

由于只支持webkit,所以除过混合应用程序外,对于一般程序来说作用不大

IDE和支持都得付费

使用场合

建议在复杂的混合应用程序,特别是要求看起来像是原生API开放的程序中使用

代码例子

01    new Ext.Application({

02        name: 'MyApp',

03       

04        launch: function() {

05            this.viewport = new Ext.Panel({

06                fullscreen: true,

07       

08                id    : 'mainPanel',

09                layout: 'card',

10                items : [

11                    {

12                        html: 'Welcome to My App!'

13                    }

14                ]

15            });

16        }

17    });

它们两都是成熟的框架。jQuery Mobile 容易使用而且在大部分场合都能工作良好,但是如果你想优化优化混合移动应用程序,那你就选择Sencha Touch吧。 

 

你可能感兴趣的:(jquerymobile)