2012 Jolt Awards: Mobile Tools
, October 30, 2012 The best mobile development tools
Productivity Award: Sencha Touch
Not so long ago, it seemed that HTML5 would be the key to writing portable mobile apps. Now, two years later, this proposition seems highly unlikely due to several factors, not least of which is the difficulty of reproducing the UI correctly and making it look native. Sencha Touch 2.0 addresses some of these limitations. It slickly hides platform details while providing a very usable abstraction layer atop the raw details of HTML5 and JavaScript, letting you build good-looking, well-built apps with a minimum of busywork.
Sencha Touch works with Webkit-based browsers, so it's not a truly universal HTML5 solution. But since both the iOS and Android browsers are built on Webkit, it delivers more than two-thirds of the mobile market, while Chrome and Safari enable the apps to work on the desktop, too. (At press time, Sencha had not yet announced support for Windows 8 or IE 10.)
Sencha Touch feels more like a polished SDK than a development environment per se. The tool of choice will be a text editor. You won't be tweaking endless property or XML files. Instead, you'll leverage Sencha's Ext JS framework so you're actually coding JavaScript and have its full programming power available when you need it. Sencha Touch's packaging for Android and iOS also provides access to native device APIs, so that developers can make use of features like cameras or accelerometers.
Sencha Touch extends the venerable Model-View-Controller architecture with Stores for persistent data, and Profiles, which allow you to customize your app to specific devices. A simple container/component model, together with several layout options, let you assemble a user interface that adapts to multiple devices without requiring you to spend time or brain cells on the details.
The product installs into a Web server on your dev box, so that its substantial amount of documentation and examples are all served locally, and you can test your new apps right away.
All in all, Sencha Touch 2.0's clever combination of technologies lets you build apps that are HTML-based and cross-platform, but which provide a user experience very much like a native app. Flexible licensing options (including special support for open-source development) puts the icing on the cake.
— Rick Wayne

