appcelerator vs phonegap vs native XCode speed-to-market

14,335

Solution 1

Time to market depends on quality of specifications, process and people, much more than the underlying technology or framework.

Coding a real application with Appcelerator Titanium is not that easy, and runtime performances are SLOWER than native code because it's using a javascript engine as a bridge. Especially with a big TableView, it's much more slower, and the feeling is just not the same. But once you have purged the memory leaks, the feeling is nevertheless incredibly better than with HTML5.

You should be interested in Titanium or PhoneGap(now known as Cordova) if you plan to distribute your application on other devices or if you really don't like Objective C.

If not, keep it with the Native Xcode.

I would add that Cordova will not make any UI, but let you access camera, accelerometer or GPS with javascript inside HTML5 code. You would probably use Sencha Touch or jqueryMobile with Cordova.

Solution 2

In my experience, if the app is not a simple template app then you would be better advised to create a native app for each platform.

As Rob says, trying to overcome the lowest-common denominator situation and overcoming limitations in cross-platform "solutions" usually means it takes longer to code than doing it natively in the first place.

You might even hit a problem which causes you to abandon ship and start from scratch as native apps. So if you decide to go a PhoneGap or Titanium route then make sure you research fully before starting and that you won't have future requirements not covered by them.

Solution 3

If you are an iOS developer and you are developing it only for iOS device, then it is better to code using XCode. If you are more into Javascript and developing for both android and iOS then you should use Titanium or Phonegap. Between Titanium and Phonegap, I found it easier to code using Titanium(and yes fast as well). But I am not sure how much worth is using Titanium. http://usingimho.wordpress.com/2011/06/14/why-you-should-stay-away-from-appcelerators-titanium/

Solution 4

I'm actually performing a fairly intensive survey of all the major cross-platform mobile development kits right now. I started by making a sample application from scratch in IOS that uses a few simple device features, and then reimplemented that as an Adroid app. Both of those took about a day to complete (the android took maybe half a day longer). Since I've never written an android app before, I think that's a good baseline in terms of comparing development time between the various other frameworks I'm testing out.

I'll update this comment in a few weeks with a blog post when I'm done, but for the moment I've been finding that these cross-platform kits are vastly more difficult to use and take a lot more time, even for the simplest applications. and despite this, there's still quite a bit of custom per-device code that has to be written for UI and fundamental idiosyncratic differences between how device services function, so you don't really get the value of a true "single code base" that you may have been expecting.

I think the main value in these may turn out not to be anything related to development time or code reuse, but instead only as a way for non-app-developers to create simple prototypes that can later be handed over to the "real" mobile developers to be built out into true native apps afterwards... Not really all that useful in my opinion, but maybe my thoughts will change as I delve into this further.

Solution 5

Appcelerator is not HTML5, it is a native app built in a higher level language of JavaScript. It abstracts the complexity of common elements away and provides huge value, ping me offline to know more. I run our California business.

Share:
14,335
xrave3
Author by

xrave3

Updated on June 22, 2022

Comments

  • xrave3
    xrave3 almost 2 years

    Titanium claims it can do the same app on average 70% faster than native XCode.

    What's been everyone else's experience in terms of difference in speed of development (between native XCode and PhoneGap or titanium) ?

    Let's say an app like Kik Messenger or Badoo ....

    Typically, a good XCode developer can do it in 4-5 weeks, assuming graphics and backend are in place.

    What would it take for an experienced Titanium (HTML5) person to achieve this? (roughly)

  • Rob Napier
    Rob Napier about 12 years
    Good link. I haven't been convinced yet that if you want to build a top-notch app that you get much benefit from cross-platform frameworks. In all the time you spend chasing down the little problems to get a lowest-common-denominator solution, you could have just written two native apps instead, and they would have integrated much better into their platforms.
  • xrave3
    xrave3 about 12 years
    Rob, what do you think of using templates and libraries vs native? stackoverflow.com/questions/8756/…
  • Nicolas Zozol
    Nicolas Zozol about 12 years
    There are some things to know about Titanium, like any other frameworks. stackoverflow.com/questions/9115811/…
  • Rob Napier
    Rob Napier about 12 years
    @xrave3, if by "templates and libraries" you mean web apps, then it's no different. If you can't access Core Animation, iCloud, Data Protection, etc. etc. etc., you're starting with one hand tied behind your back on the way to a stand-out app.
  • xrave3
    xrave3 about 12 years
    Yes Rob, I mean things like inside this link: stackoverflow.com/questions/215390/…
  • Muhammad Irfan
    Muhammad Irfan almost 12 years
    I really accept, "You might even hit a problem which causes you to abandon ship and start from scratch as native apps"..
  • Jorre
    Jorre about 11 years
    To add to this, Titanium has recently included a ListView component which should fix most of the performance problems related to the TableView component.
  • Bardelman
    Bardelman over 10 years
    You said : <<runtime performances are SLOWER than native code because it's using a javascript engine as a bridge.>> i think that the application won't use any javascript on the runtime because javascript is only used on the developement phase and then the application will be generated on native code so it will be as fast as an application developped with the native code directly. Please someone tell me if this is wrong or true.
  • krisdyson
    krisdyson over 10 years
    This is wrong. JavaScript is run on the devices. Your app is shipped with a JavaScript engine.