How far will this book get me?

Discussion in 'iOS Programming' started by appleguy123, Jul 16, 2009.

  1. appleguy123 macrumors 603

    appleguy123

    Joined:
    Apr 1, 2009
    Location:
    15 minutes in the future
    #1
    I was recently given the book "Programming in objective-c 2nd edition" how far will this get me into iphone dev? and has anyone read the whole book and if so how good are you at dev. now?
     
  2. cis4life macrumors regular

    Joined:
    Apr 4, 2008
    #2
    This is a GREAT book for learning Obj-C. After finishing that book, pickup a iphone sdk book.
     
  3. lee.anderson macrumors regular

    lee.anderson

    Joined:
    Aug 28, 2006
    Location:
    UK
    #3
    That book would get you pretty far. To program for the iPhone, you need to code in Objective C, and once you are "comfortable" programming in that, pick up "Beginning iPhone Development: Exploring the iPhone SDK" by Dave Mark and Jeff LaMarche. That book will teach you how to use Objective C with the iPhone.

    But don't get too ahead of yourself, learning programming isn't reading through a book once and then you know it all, you would probably read it many times just to start to understand this vast subject. I would be surprised if someone that has no previous programming experience can actually create a semi-decent app for the iPhone in less than a year...
     
  4. appleguy123 thread starter macrumors 603

    appleguy123

    Joined:
    Apr 1, 2009
    Location:
    15 minutes in the future
    #4
    Are there classes that you can take in person? i seem to learn better that way... im already confused at using xcode lol
     
  5. anmldr macrumors member

    Joined:
    Jul 14, 2008
  6. icewing macrumors 6502

    Joined:
    Jun 19, 2008
    Location:
    St Louis
    #6
    Check out the iPhone Application Programming course from Stanford University.

    It's free - from within the iTunes Store, click on the iTunes U link. Right now it's showing as a big red button in the center of the page...
     
  7. TodVader macrumors 6502a

    TodVader

    Joined:
    Sep 27, 2005
    Location:
    Quebec, Canada
    #7
    The reason you're confused with Xcode is because you shouldn't be in Xcode yet.

    The Objective-C 2.0 book teaches you the language behind all this. It doesn't teach (well there is one small chapter) Xcode.

    If you really want to learn, learn first and then start to program. People think they can overlook a couple tutorials in an afternoon and create the next No1 app.

    Like a previous poster said, it takes at least 6 months - 1 year to start being a novice programmer. To know it all, it would take a couple lives more or less.
     
  8. PBG4 Dude macrumors 68000

    PBG4 Dude

    Joined:
    Jul 6, 2007
    #8
    I would say the time it takes to become an intermediate programmer depends on the drive and aptitude of the person. When I was 12, I used to go to Radio Shack every Saturday and teach myself how to program a TRS-80 Model III (64KB! 2 5.25" Floppy Drives :D ) in BASIC (Beginner's All-purpose Symbolic Instruction Code) using my dad's latest issue of Computers & Electronics. I certainly wouldn't do this today (no need), but back then I was driven to learn everything I possibly could about computers.
     
  9. appleguy123 thread starter macrumors 603

    appleguy123

    Joined:
    Apr 1, 2009
    Location:
    15 minutes in the future
    #9
    actualy xcode is in the first lesson in the intro lesson.
     
  10. ethical macrumors 68000

    Joined:
    Dec 22, 2007
    #10
    I think TodVader was referring to using xCode for iphone programming specifically. The book only uses xCode for that in (as TodVader said) one or two chapters.... but you're right it does use xCode all the way through, but for simple commands with no GUI.

    Just read through the book slowly, it explains what you need to know. If you dont understand something then read it again...and again....and again. I've read one or two of the chapters at least 4 times each to make sure I've completely got my head round it.

    Patience is definitely a virtue when it comes to learning how to program.
     
  11. TodVader macrumors 6502a

    TodVader

    Joined:
    Sep 27, 2005
    Location:
    Quebec, Canada
    #11
    Exactly. What I mean is don't start building complex with with IB and Xcode right away. The best way to learn is by doing simple command line stuff like in that book.

    After you've learned Objective-C, learning the different frameworks will be much easier.

    Before you get into that, you need to master lots of stuff, specifically pointers. They seem useless and hard at first, but they are the pillar of object oriented programming.
     
  12. AndyCodez macrumors regular

    Joined:
    Aug 6, 2009
    #12
    And read the Iphone SDK Documentation! Its very helpful.

    Although I wish xCode and intellisense(sp) like Visual Studio, that speeds up development so much. Don't get me wrong The auto fill is nice, but at times it can be annoying!
     
  13. t0mat0 macrumors 603

    t0mat0

    Joined:
    Aug 29, 2006
    Location:
    Home
    #13
    Worth checking the free pragmatic programming screencasts too - Screencasts at a decent resolution can be a great guide - just luck of the draw finding the right ones.
     
  14. duggram macrumors 6502

    duggram

    Joined:
    Apr 17, 2008
    #14
    It's also helpful to download the sample apps from Mac Dev, set a break point in each implementation file and step through the app. This will show you a little about how things work. Watch the variables and see how they change.

    Please do not make the assumption that I am saying this is all you need to do. It's just another learning tool to supplement your textbooks and online tutorials.

    Lastly, code as much as you can. Not just copying tutorials. Do some original thinking no matter how trivial you think it is.

    My thoughts and I would like knowing what others think.
     
  15. r00li macrumors member

    Joined:
    Sep 27, 2008
    #15
    Well there are many different paths to learn programming. I started with the Learn Objective C on the mac (Apress) book. And this didn't realy show me the true objective C. Of course I didn't read it all. Then I started with the Begining iphone development (Apress again). And that book isn't realy good either. Half of the things are not explained and the author is making complex applications (he should begin with simple applications). I recoomend using this two books (ore one that is better) and internet forums/youtube... When you read something first try to do that yourself by copying (not copy-paste) the examples and using your own variable names/messages...And when you are stuck try reading documentation and experimenting (this will produce many errors but at some point you will get it right). Most languages (java, C#, Visual Basic) are easy to understand and use while Objective C is different. Very different. You will again have to learn what object oriented programming means:rolleyes:.

    And pointers - those fu**** idiotic little bastards should be banned from the programming universe:D. They complicate things too much. For Java developers that is even more true because Java has no pointers and the whole concept is hard to understand when you know that you can do something without them.
     
  16. dejo Moderator

    dejo

    Staff Member

    Joined:
    Sep 2, 2004
    Location:
    The Centennial State
    #16
    What do you consider the "true" Objective-C and how did this book not show you that?
    Ah, well, that probably explains something at least.

    Objective-C is different. Probably just as different as Visual Basic is to Java. But you don't have to relearn OOP. It very much follows its principles. Just uses different syntax and alternative approaches.

    Seriously though, I take it you're rather new to Objective-C and thus have prejudged in rather harshly without giving it a chance. Being a technology bigot is a narrow-minded attitude and you'll be better off losing it. Hope that doesn't sound too harsh.
     
  17. duggram macrumors 6502

    duggram

    Joined:
    Apr 17, 2008
    #17
    Now that's a truism!!!

    Just kidding. Actually I like the way Obj-C easies you into pointers and references. I hate to say this but, "back in the 90's" I worked in Java for 5 years and my company put me through night school at UW (seattle) for almost 2 years to get a certificate in C/C++. I hated it, but I loved Java! No POINTERS!! There were no training classes in Java around '96-97, hence night school in c/c++. In '98 I was one of the 7 original Microsoft Java MVP's. Those were the good old days!

    After the bust in '01 I went back to a previous career, vowing to never program again. At the time I went to a tech job fair after I got laid off in the fall of '01 where the expected attendance was 500. More than 5000 tech folk showed up. They had to hold their forums outside at the Seattle forum because the class rooms couldn't hold all the people.

    Now I'm only a few years from retirement and I'm trying to get back in to programming shape. Working on getting certified in Java but I really appreciate Obj-C. I switched to OS X last year, have an iPhone and would like to write some apps for it. I strongly feel that if you can just get through the first ~200 pages of Kachan's "Programming in Obj-C 2.0" and then start working on "Cocoa Programming for Mac OS X" by Hillegrass you will see the beauty of Obj-C. Especially if you do some work in VB (my first language in '92!!), C or C++.

    Another language I want to get tuned up in is C#. I have an old friend, a contractor that teaches it at Microsoft in Seattle. It really sounds good too.

    Really? Think about pass by reference for a minute.

    So, maybe you should give Obj-C a little more time. It really is an elegant language.
     
  18. r00li macrumors member

    Joined:
    Sep 27, 2008
    #18
    I never said that Objective C is a bad language. Actualy it is preaty good after you get used to it (and I am still doing that). But still it has some problems. In Objective C there are to many NSthings:D. You have NSInteger, NSString, ... And you could use primitive data type (int) instead of NSInteger. Of course it has some advantages but also some disadvantages. And the NSString class doesn't have everything. In Java you have many methods for working with strings that can remove whitespaces... In objective C you have those too but they are not part of the NSString class.

    True objective C would be working without a GUI, making a simple program that does nothing or displays a little message. Here the first chapter where you do anything starts with the additions to objective C. And then goes to OOP conecpets. Yes the language is Objective C but making a simple programm with procedural programing would be nice too. Because OOP is overkill for many of the iPhone programs. And in this book he shows the same example in C and Objective C. And of course in C he uses struct and other things that I never saw in my life:confused:. I started programming with python, then Visual basic, PHP (PHP was two years ago - and I quite like it), C++ (only a little basics which are practicly the same as in PHP), Java and then finaly Objective C.

    Well I didn't reat that advanced topics and the things that are mac specific. But I did read other parts. What I do think is that I need a better book:D to learn those things that I don't understand fully.
     
  19. dejo Moderator

    dejo

    Staff Member

    Joined:
    Sep 2, 2004
    Location:
    The Centennial State
    #19
    And I never said you said that.

    As do all languages. None is perfect.

    These are Foundation framework classes and give you a lot of power without having to reinvent the wheel. Java has similar libraries.

    You can, sometimes. But NSInteger is an object and thus can be used by other classes that work with objects, like NSArray and NSDictionary. Can't say the same for int.

    Granted, just like all languages.

    Again, no language is perfect.

    "Programming in Objective-C 2.0" by Stephen Kochan, the very book that started this thread. I, and many others on this forum, would highly recommend that book as your introduction to Objective-C. It deals a lot more with what you consider the "true" Objective-C.
     
  20. r00li macrumors member

    Joined:
    Sep 27, 2008
    #20
    I will try that book. I understand most things but some are still a little unclear.
     

Share This Page