iOS Apps : HTML5 vs Objective-C?

Discussion in 'iOS Programming' started by msaljaber, Feb 4, 2013.

  1. msaljaber, Feb 4, 2013
    Last edited by a moderator: Feb 4, 2013

    msaljaber macrumors newbie

    Feb 4, 2013
    Hello, world!

    I'm glad of thinking of being an iPhone developer, but I have some fire-queries, hope you turn it off;

    I know how to code in JavaSciprt, HTML5, CSS3, so:

    1- Can I make an iPhone app using that languages?

    2- If yes: can I use Python with MySQL as server-side languages?

    3- How much time it needs to learn Objective-C and iOS SDK from zero to professional?

    4- Is there a difference in quality between making apps using Objective-C and other languages?

    5- How did Evernote make their app's UI? I've noticed a very different UI form the old version!

    As you can see here:
    Actually, I've noticed a huge difference in UIs last year! What happend? Is it HTML5 techs? or new GUI in Xcode?

    Thanks in advance!
  2. robbieduncan Moderator emeritus


    Jul 24, 2002
    1. Not really. You can use a UIWebView to host an app written in these languages but it will always feel like what it is: a hosted web app. People have tried this approach in the past and it always feels somewhat non-native

    2. Your server side is irrelevant: you can use anything you like regardless of front-end technology

    3. How long is a piece of string? Anything from a month or two up.

    4. If you want to write a native app that feels native you have to use Objective-C.

    5. I believe it is lots of custom views written using native code.
  3. MattInOz macrumors 68030


    Jan 19, 2006
    If it's iOS6 only upgrade or interface it could be a UICollectionView with a custom layout.
  4. firewood macrumors 604

    Jul 29, 2003
    Silicon Valley
    You can wrap some Javascript for a UIWebview in a few pages or less of Objective C wrapper code and make an app for the App store. There are many apps in the App store constructed like this. However, Apple has been rejecting more and more of these types of apps lately, unless the app does something more than a web site can.

    Professional C programmers have been reported to come up to speed in Objective C around in somewhere on the order of 2 months. Javascript programmers may require more time to learn some lower level coding concepts (threads, typing rules, memory constraints, etc.). The entire set of Cocoa Touch and iOS frameworks can take years to fully comprehend.

    Facebook switched from using HTML5 to coding in Objective C for app performance and user experience quality. Their experience is not unique.
  5. CheesePuff macrumors 6502

    Sep 3, 2008
    Southwest Florida, USA
    You can use PhoneGap (Cordova) to make a native iOS app with use HTML and JavaScript.
  6. dejo Moderator


    Staff Member

    Sep 2, 2004
    The Centennial State
    I don't believe those are truly native apps.

    From their FAQ:
  7. macrumors 68000

    May 25, 2012
    Took me about 3-4 months and 2 reads through an objective c book by stephen kochan. I was no means a pro but able to put my first app out.

    I did have some exp in vb and java tho.
  8. Kashsystems, Feb 5, 2013
    Last edited: Feb 6, 2013

    Kashsystems macrumors 6502

    Jul 23, 2012
    Problem with HTML apps is they still feel like HTML apps. The main reason to use HTML app is you want write a single app that you can push across Android, IOS, and Windows.

    The problem is they still don't feel quick right and even using frameworks to work, they still do not feel right.

    That is up to you though and your own personal tastes.

    One of the biggest examples I can give is how Facebook made leaps and bounds improvements in responsiveness and reliability in their IOS app by switching From HTML to objective c base programming.
  9. msaljaber thread starter macrumors newbie

    Feb 4, 2013
    Thank you all :)

    Is Objective-C really hard language to learn? -as 'they' said-?
    I have some ideas, wanna bring them to life, also, I have 6 hours free-time to learn how to break a rock!

    Any advices?
  10. robbieduncan Moderator emeritus


    Jul 24, 2002
    6 hours total? 6 hours a day? Given your foundation I don't see it as a possible in 6 hours total...
  11. msaljaber thread starter macrumors newbie

    Feb 4, 2013
    Oops! sorry, 6 hours a day :)
  12. robbieduncan Moderator emeritus


    Jul 24, 2002
    Then, depending on lots of factors, it could take a few months. You will need to ensure you are comfortable with object-oriented design patterns and the general Cocoa patterns in use as well as the syntax of the language.
  13. anoobis, Feb 7, 2013
    Last edited: Feb 7, 2013

    anoobis macrumors regular

    Jul 26, 2012
    Check out Titanium:

    Apple's Objective C is kind of cumbersome. It's a pain, honestly.

    Concatenate two strings:

    Using 'self' in blocks needs workarounds like weakSelf. Multiple ways to do iVars some of which accomplish the same exact thing. Constant deprecation of methods. Constant changes to ways you do something in XCode yet the documentation is not updated to match. NSInternalConsistencyException when developing with a changing Core Data model (prevents app from starting).

    ObjC in general is not as elegant a language as others. There's not really support for 'protected' access, for example. It's fake. There's no true private access either. No support for abstract methods. Things like that.

    XCode is not a very good IDE. I use AppCode and XCode since AppCode's editing capabilities are far superior (like auto suggest), imo, but AppCode is missing some functionality that XCode has e.g. Interface Builder. But, then again, Interface Builder is pretty buggy - in its interactions and also in the resulting 'model' it outputs. Weird stuff happens. Doing the same thing programmatically fixes the issue most times.

    Just a FYI for when/if you get into it. I make a living using it and it's not terrible. Just a lot that annoys me compared to when I develop in other languages/environments. Don't be discouraged if you're finding yourself constantly asking yourself "WTF?!"

Share This Page