What is a good foundation for learning Objective-C?

Posted on 2011-05-04
Last Modified: 2013-11-25
My 15 year old will be attending a week-long "programming iphone and ipad apps" camp toward the end of this summer.  Listed as a prerequisite is "a practical knowledge of either C++ or Java".   He plans to get this knowledge through self-study activities during July.  My understanding is that he will be working with Objective-C during camp and am looking for opinions about which language makes most sense for him to study before-hand: C++ or Java?    
Question by:jolodali
    LVL 13

    Accepted Solution

    Lucky kid!  I too am 15 years old and I learned most of my programming and expertise around a year ago.  Objective-C was my first language and it had a little bit of a learning curve, but was definitely not too bad.  How much programming knowledge does your son already have?  Does he have a knowledge of methods, algorithms, and other mathematical fundamentals?  If the answer is "no", perhaps he should look into Python as it is a widely acclaimed "beginner" language and will teach many things that he will use throughout his programming career.

    If hopping in directly to some more advanced languages, I would recommend a knowledge of "C" or "PHP" to your son.  Both of them have extreme real world applications and will assist him once he wants to go with Objective-C.  I will explain both below:

    I have not explicitly learned "C" but I hear that it is very close to Objective-C.  In fact, Objective-C actually inherits directly from C.  With Objective-C, you will use much of the same syntax and programming habits that you would with C.  For example, you would be able to directly carry over methods, values, math, etc.

    PHP is like an easy version of C and Objective-C.  This was my 4th language and I found it to be just like Objective-C in many respects.  With PHP, you do not have to worry about many of the difficult concepts like memory management.  Instead, you can focus on cleanliness and great coding habits.  Like C, it will teach you many fundamentals that are exactly like Objective-C.  For Statements, If Statements, While Statements, math, you name it!  

    Java is a starting language as well, but I have not touched it.  In my opinion, it is too unlike Objective-C to even bother with.  The languages listed above will serve the same purpose, and then some.  C++ is one of the more "down to earth" languages and I find it to be very difficult to start with.  

    Now begs the burning question, why doesn't he hop into Objective-C directly?, MyCodeTeacher, and a plethora of other websites offer great introduction tutorials and he will be able to be creating applications in no time.  The iPhone SDK is even a FREE download and you will not have to post the $99.00 fee.  If he takes this option, a good resource (and one that I am present on) is

    Let me know your thoughts on this and if you have any questions, please do not hesitate to ask.



    Author Comment

    Hi Aaron,
    Thanks for your very complete and thoughtful response.  To get right to your burning question: I think the camp lists C++ or Java as a prerequisite because they offer another week-long session that introduces those languages.  From their business perspective, they probably want parents to sign their kids up for both but that's not an option for us.  I think I will suggest to my son that he look into the Objective-C tutorials.  This sounds like a good way to prepare him for his session at camp.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    What Is Threat Intelligence?

    Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

    Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
    Do you come here a lot? Are you lazy like me and don't want to go through the "trouble" of having to click your Dock's Safari icon and then having to click your Experts Exchange Favorites bookmark to get here? Well then this article is for you.
    The goal of this video is to provide viewers with basic examples to understand how to use strings and some functions related to them in the C programming language.
    Video by: Grant
    The goal of this video is to provide viewers with basic examples to understand and use for-loops in the C programming language.

    760 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    6 Experts available now in Live!

    Get 1:1 Help Now