Titanium Community Questions & Answer Archive

We felt that 6+ years of knowledge should not die so this is the Titanium Community Questions & Answer Archive

Would you consider Sencha

Sencha was announced yesterday - http://www.sencha.com/ - a combination of 3 great javascript libraries for Mobile development. Looks great for building web sites apps.

My question is - would you consider using it, within a web view in Titanium, thus building apps using almost the exact same code as your web version?

Or is there other advantages in using native calls? In which case, is there a place for a library specifically for Titanium to do forms, tables etc?

— asked June 17th 2010 by Scott Penrose
  • sencha
  • webview
1 Comment
  • I am sorry for those who replied that I didn't make this very clear. Here is some more explanation:

    • I am comparing writing Native Apps with Web Apps. I have now developed two of the applications I require as Web apps, using offline storage and caching. What is the down side? Well if I wanted more than 5MB of storage there might be, but it seems for writing basic apps, I don't need to write them using Native. And I don't need Apples approval to have them installed on an iPhone/iPad.
    • If writing native apps - and advantages there are more realistic native components, in theory performance, and much larger storage (one DB I am looking at developing has local content over 500MB).
    • There is a number of answers here saying that Sencha is slow. I think there must be network or other issues, as I am finding it lightning fast. Startup time for apps on my iPhone 3G is sub 1 second. iPad about the same. I have not tried it on Android. But when I build something like a table of data it is 10 times faster than Titanium. I built a table of 10,000 rows in a few seconds. There are many Q&A here that talk about table over a 100 rows being slow. I think the slowness here people are seeing is loading over the internet, and that all the examples are using the fully commented and expanded Javascript.
    • There is no suggestion in my question about wrapping HTML5 apps in Titanium. Quite the opposite, I was comparing the solutions. One is writing WebApps (that install and use local storage, and in all intense purposes to an end user work and look like an installed app) compared with Titanium apps, which have to go through App stores to install, but have advantages in different ways. Sorry that wasn't clear.
    • License of GNU is only for Beta release. It is a commercial product that is dual licensed, like ExtJS. Once it goes to 1.0 you will be able to buy a developer license for releasing unlimited applications (ExtJS is about $250, I am guessing it will be in the same order of magnitude). It will continue to be GNU too, so you can do open source GNU and Mixed license (you are not contaminated, see their exceptions, as you can release your own code as Apache or MIT etc) for free.

    Hope that explains my intents, and sorry if it was not clear.

    Titanium advantage:

    • Native controls (real native, not emulated with CSS3)
    • Large storage (huge really, some apps on app store are over 1GB)
    • Performance (this needs to be tested, my tests have shown otherwise, but in theory Titanium should be heaps faster)

    HTML5/Sencha advantages:

    • No need to get Apple approval
    • Can update the code, and if the user has an internet connection, it will download the new one in the background for running on the next execute automatically.
    • Native looking apps
    • Already works on iPad, iPhone, Android etc with one app (Titanium needs separate iPad/iPhone apps).
    • Can be wrapped in Titanium (or competing products) as Store apps if desired (like old Titanium, although you then miss the advantages).

    It is an interesting mix. I feel that I will need to learn and master both technologies and will move depending on the requirements.

    Thanks for the replies.

    — commented June 23rd 2010 by Scott Penrose

7 Answers

  • JQTouch is another options, but they dont have ANDROID running yet.

    — answered June 17th 2010 by vincent youmans
    permalink
    2 Comments
    • Actually JQTouch is Sencha. JQTouch, Ext and Raphaël joined together to become Sencha, and they do now support Android.

      Mind you…. they won't be (I imagine) supporting Blackberry.

      — commented June 17th 2010 by Scott Penrose
    • Woops… even Blackberry - http://www.electronista.com/articles/10/02/16/blackberry.now.has.fast.accurate.web.browser/

      — commented June 17th 2010 by Scott Penrose
  • you can also have a look at :
    http://iwebkit.net/demo
    http://code.google.com/p/iui/

    what is great in Sencha : fixed elements (navbar, tabbar etc..)
    (for this option with the two above, you will need to consider : http://blogs.nitobi.com/jesse/2010/05/03/glovebox/ from the phonegap's guy)

    … BUT titanium is so easy to use ;-)
    first native advantage is speed.
    for table, forms etc.. check API & kitchensink, everything is in there.

    — answered June 22nd 2010 by Stephane Pelamourgues
    permalink
    0 Comments
  • Sencha is SLOWWWW!! Like running an app through peanut butter.

    — answered June 23rd 2010 by null null
    permalink
    0 Comments
  • Sencha Touch is looking pretty awesome! It performs great on iPad, but loads/performs a bit more slowly on the lower end mobile devices I tested (iPhone 3G and Android G1). Another thing to note is that it is licensed under the GPL OSS license, which means any app you develop using this technology will also need to be open source. I imagine at some point Sencha will make a commercial license available, but you'll have to pay to use it in a commercial application.

    Could you use it in a Titanium app? Sure could - I think you'd achieve great results on iPad right now. The Titanium native APIs will be faster, though. Sencha is definitely worth monitoring for web applications - if it were me, though, I'd probably go native in Titanium to do the things Sencha can do.

    One place I could see it being useful - if you're doing an iPad game in a webview (we have a number of those out in the wild), you could do your admin/config/settings screens in Sencha and not have to mix too much native+web.

    I want to underscore I'm not bashing Sencha Touch - it's looking really great and I'm excited to see what they come up with. These are just some thoughts I had.

    — answered June 23rd 2010 by Kevin Whinnery
    permalink
    0 Comments
  • If you have the capability of writing Native apps but want to compare with using web tools, sencha, titanium, etc., we just wrote an extensive blog post on the subject: Web vs Native: How Should You Write Your App?

    — answered February 4th 2011 by S Woodside
    permalink
    0 Comments
  • The demo sites take about 48 seconds to come up on my iTouch. Is this typical??

    — answered June 17th 2010 by John Lullie
    permalink
    0 Comments
  • "My question is - would you consider using it, within a web view in Titanium, thus building apps using almost the exact same code as your web version?"

    That doesn't make any sense…. why wrap a Sencha-based HTML5 web app inside Titanium?

    It would be one or the other, not both

    — answered June 23rd 2010 by Stephen Gilboy
    permalink
    0 Comments
The ownership of individual contributions to this community generated content is retained by the authors of their contributions.
All trademarks remain the property of the respective owner.