Objective-C Question

Discussion in 'Mac Programming' started by ricke46, Apr 27, 2009.

  1. ricke46 macrumors member

    Joined:
    Jan 17, 2008
    Location:
    Northern California
    #1
    Hey There,

    Can Objective-C be learned as a stand alone language or will I have to learn other languages first? If so, which one(s)? Also, I know this will be quite a hard question to answer, but from personal experiences, how long would it take to be good enough to code professionally? Is this something that takes years to learn and master?

    Thanks in advance for your time!
     
  2. HiRez macrumors 603

    HiRez

    Joined:
    Jan 6, 2004
    Location:
    Western US
    #2
    It can mostly be learned on its own (along with the Cocoa API), but it'll be much more useful if you learn some straight C along with it, since Objective-C is a superset of C and there are some things that can't be done only using the Cocoa libraries (and some that can but might not be as efficient). So yes, learn some C. As far as how long it takes to code professionally, yeah that is hard to answer, it really depends on the person. Coding just comes more naturally to some than others, just like music or language or carpentry or anything else. Assuming no previous coding knowledge I guess anywhere from a year to never is the answer, but I'd say by 2-3 years you'll know if it's for you or not, and by that time if it is for you, you'll have the knowledge and experience to be crafting real applications. Of course getting a job coding somewhere else (as opposed to being an independent developer) will be tougher without a degree and long history to show. As a direct answer to your question, yes it takes years to learn and like any art or science, a lifetime to truly master.
     
  3. ricke46 thread starter macrumors member

    Joined:
    Jan 17, 2008
    Location:
    Northern California
    #3
    Thank you very much for your response!

    Are there any books/sources that you can recommend on both the "C" and "Objective-C" languages?
     
  4. HiRez macrumors 603

    HiRez

    Joined:
    Jan 6, 2004
    Location:
    Western US
    #4
    Just do a search on these forums and you will find lots of info as this question is asked a lot, at least a few times per week.

    Here's a FAQ that covers a lot of it.

    Here's a list of resources that may help you.

    If you want to jump right in and try Objective-C first, read Apple's Objective-C Programming Language guide. This is pretty well written but might have a steep learning curve if you've never programmed before.

    For a more thorough reference, most people like Stephen Kochan's Programming in Objective-C 2.0. Another one getting good reviews is Learn Objective-C on the Mac.

    For Cocoa, almost unanimously people prefer Aaron Hillegass' Cocoa Programming for OS X. This book also teaches you a few Objective-C basics along the way, though not in-depth.

    For C, there's a book known as K&R that is kind of the holy bible on the subject, and it is excellent, but I wouldn't recommend it to someone just getting started in programming as it is terse and has a steep learning curve. There are hundreds of learning C books out there, I'm not sure which ones are good nowadays, just start reading reviews on Amazon.com I guess.
     
  5. GorillaPaws macrumors 6502a

    GorillaPaws

    Joined:
    Oct 26, 2003
    Location:
    Richmond, VA
    #5
    All of HiRez's suggestions were spot on. I just wanted to add a link to a Mac-based C tutorial to check out online.
     
  6. skochan macrumors regular

    Joined:
    Apr 1, 2006
    Location:
    California
    #6
    Sorry, but whenever someone asks this question I have to stick my two cents in. :D

    I'm a firm believer that you can start with Objective-C and even recommend against learning C first--it's a question of developing good programming practices by learning an object-oriented (Objective-C) language as opposed to a procedural (C) language first. There are some features of C that you will need to learn, but you can learn them after learning Objective-C. Unfortunately, most of the existing tutorials or documentation on Objective-C assume you know C first.

    Disclaimer, my book does not assume you know C first! :)

    Good luck with whatever path you choose,

    Steve Kochan
     
  7. liptonlover macrumors 6502a

    Joined:
    Mar 13, 2008
    #7
    I also recommend Aaron Hillegass' book, but I feel differently about it.
    You'll need to know some C first, that's what the book assumes you know. I have been recommending cprogramming.com, I found it to be very good. But looking over masters-of-the-void.com, it looks like a very good site to learn from as well. I can't recommend it personally, though.
    Hillegass' book goes pretty in-depth into objC and cocoa, in my opinion. The problem I struggled with is that it tells you how to do things, not why. After reading a chapter, usually multiple times, I was still confused as to why I needed to know what it taught me most of the time. So just keep that in mind when you use the book and supplement it with other sources.

    I don't think ObjC can be learned as a standalone language, or at least shouldn't be. Definitely learn C first. After that, go into ObjC and you should be good to go.

    Nate
     
  8. AuntJemima macrumors newbie

    Joined:
    Jan 14, 2008
    #8
    I agree and will also supplement that...
    I learned to code about two years ago(Java) and still am not close to being a 'professional' but I like to use his book to reference things and concepts not to understand them. Like it says the book doesn't do theory really but is a great help all the same.
     
  9. ricke46 thread starter macrumors member

    Joined:
    Jan 17, 2008
    Location:
    Northern California
    #9
    Whoa, from the man himself! Thanks for the two cents, I assure you it's worth more than that :) I'll be sure to take a look at your book.

    Thanks, Nate! I appreciate the suggestion.

    Looks like I've got a long road ahead of me, whichever way I choose to go with learning to program.

    Thanks for all the input everyone!
     
  10. theagentx macrumors newbie

    theagentx

    Joined:
    May 3, 2009
    Location:
    Fort Lauderdale, FL
    #10
    I have faith in you Steve! I am trying YOUR book now :) Wish me luck!!!
     
  11. skochan macrumors regular

    Joined:
    Apr 1, 2006
    Location:
    California
    #11
    Good luck!!! :)

    Remember, you can get lots of support at my forum: www.classroomM.com

    Cheers,

    Steve Kochan
     

Share This Page