Monday, 19 November 2012

Sencha Touch vs jQuery Mobile: High Level Review

Cross-platform development tools are used for developing mobile applications that can be deployed in multiple platforms. Sencha Touch is a framework which uses Web standards for creating mobile applications. jQuery Mobile is a jQuery based framework which can be used for designing and developing web applications for mobile..

jQuery Mobile - jQuery Mobile announced in August 2010. It takes a similar – but more standards-compliant – approach to jQTouch and feels very much like that framework’s successor, with a broader array of UI controls and styles.
jQuery Mobile’s performance is variable, particularly in responding to tap events rendering animations.

Sencha Touch - Sencha Touch is the mobile counterpart to the Ext JS framework. Its approach differs significantly from jQuery Mobile: instead of enhancing preexisting HTML, it generates its own DOM based on objects created in JavaScript. Working with Sencha feels a little less “webby” and a little more like building apps in other technologies like Java or Flex.

Selecting a suitable UI framework is very important for the success of any mobile web application development. Knowing the strength and weakness of these frameworks will help the platform selection an easy process. Based on some important parameters which will influence the platform selection, I have listed below a summary of comparison.

jQuery Mobile
Sencha Touch
jQM is based on the popular framework jQuery.  This is prevalent in the script loads as well. It's Lightweight.
ST on the other hand loads one file with ExtJS framework requirements in addition to the Touch framework.
jQM, lists support for iOS, Andriod, BlackBerry, bada, Windows Phone, palm webOS, symbian, MeeGo.Latest stable version is 1.2.0.
ST v1.1.1 supports, iOS, Android and BlackBerry. Latest release is 2.1(in beta version).
No MVC. Lot of care has to be taken while organizing the code.
ST is based on ExtJS 4 and brings the MVC pattern to the table.
Some transitions are not very smooth.
The transitions are seamless and very smooth.
Active ecosystem. Lots of plugins.
Difficult to design layouts.
Finer control of the HTML. Can use full power of HTML5

Easier to find errors
Too much dependence on global variables. Debugging mess.
Dead easy to make themes. Have an online ThemeRoller! (http://jqueryui.com/themeroller/)
Difficult to theme. Requires messing around with JS and SCSS.
Supports majority of the browsers (http://jquerymobile.com/gbs/)
Can be used for mobile site as well as mobile app (embedded webkit)
Only supports webkit based browsers.
Development is open and happens publicly with the support of the community.
The code repo is available to you on only if you purchase support and development is mainly done within Sencha company.
It's jQuery! It’s handy!
Learning curve is required to learn the ST framework, understand the documentation styles, and implement the application and features necessary to build an application.
Need to handle reliability and performance for complex applications.
Better performance.

If you want to build an iOS app then you may go for Phonegap + sencha because sencha makes it looks like a real native app and has explicit iPad support. It will work very well for iPhone. But if you want to port the same app in Android, you need to rethink; it is slower in android due to low hardware specs. It is somewhat better in HTC, S3 and other high end android devices because of their good specs.

If the requirement is to develop a large enterprise application with lots of emphasis on performance, security, extensibility etc, opting for Sencha Touch could be a good decision. But if you are looking for simple web based and very less time to market applications, jQuery Mobile could be a good decision because of its simplicity and its very Web-centric approach to development.

Reference Links :
http://mhorner.blogspot.in/2012/02/sencha-touch-vs-jquery-mobile-high.html
http://www.fusonic.net/en/blog/2012/06/26/sencha-touch-vs-jquery-mobile/

1 comment:

  1. This blog is also published on my company's website. Here is the link - http://www.collabera.com/blog/default/2012/12/12/1355310199068.html

    ReplyDelete