Objective - C, Do i need to learn C

Discussion in 'Mac Programming' started by Hitachi-Chan, May 9, 2011.

  1. macrumors newbie

    Nov 5, 2010
    Huge newbie question here. Do i need to learn C to learn Objective - C, im already guessing its a yes but i just want to make sure. Thanks.
  2. macrumors 68040


    Jan 10, 2005
    Dallas, TX
    You don't have to learn C first, but learning Objective-C will be learning C plus some. This gets debated fairly frequently here, with no real consensus. If you have use for C outside of Objective-C, learn it separately so you know what's what. If not, and your only goal is Mac/iOS development, probably dive into Objective-C. Steve Kochan's Programming Objective-C 2.0 will cover what you need of C, so that might be a good place to start "from scratch".

  3. Moderator


    Staff Member

    Aug 16, 2005
    New England
    Just note that the material does not resonate with some folks, so if you don't "get it" consider another book. "Learn Objective C on the Mac" http://www.apress.com/9781430218159 is an alternative that may work better for you if Kochan fails for one reason or another.

    Also the next edition of Kochan is due next month, and is updated for Xcode 4.

    You should decide now if you are going to stick with Xcode 3 until you are comfortable with it or go straight to Xcode 4.

  4. macrumors 68000

    Sep 8, 2006
    Balamw said almost what I was going to say and I did not like the Stephen Kochan's book. For me it was dry, boring and wordy. I took a step back to learn C using this book which I liked http://www.apress.com/9781430218098 and this forum was a big help.

    I even then took a class in Pascal which was another step back but a good thing. Learning from a book and then a teacher is a very different thing. The interaction was important for me.

    Today was the last class and next Monday the Final!

  5. macrumors 604

    Jul 29, 2003
    Silicon Valley
    Objective C is a superset of plain ANSI C. If you don't learn a fair amount of C, you haven't really learned Objective C, only a tiny part of it, and you won't understand how Objective C really works.
  6. macrumors G5


    Nov 25, 2005
    You don't need it to the point where you would be a competent C programmer, but you need some idea what it does. Some of the syntax of Objective C is very obscure to someone learning Objective C - until you realise that it's really C and then it becomes obvious.

    You'll need to know about the basic types, pointers (very important), and you'll need C if you do any real maths.
  7. macrumors regular

    Oct 8, 2009
    It will also depend on your computer background. Do you know any other language: Java, PHP, Python ?
    If not, you should try with a quick intro with C with online tutorials or books. As gnasher729 said, it's really important to understand what a pointer is.
    For my part, I started with "Learn C on the Mac" (Mark) then switched to "Programming in Objective-C 2.0" (Kochan) and "Cocoa programming for Mac OS X" (Hillegass). The latter is a must.

Share This Page