I imagine a lot of programmers out there have similar issues to mine. I meant to learn Cocoa a while back, as a programmer and Apple switcher. But I never got around to it. Fast forward to March 2008, I still haven’t started learning Cocoa, and now the iPhone SDK comes out! I guess its time to learn!
Of course, I first assumed I would just plow through it. I downloaded the first SDK the day it became available, ripped into the sample projects that were online and looked at the code, I honestly could not make heads or tails of a lot of it. I could figure out what code was building the interface elements, and I could see the dummy arrays that were feeding into it, and had a vague idea of most of the syntax (I had programmed in C and C++ but never in Objective-C). No, If I was going to program for the iPhone (and of course all sorts of crazy app ideas were racing through my mind), then I was going to have to properly learn how to program Cocoa and Objective-C.
After a bit of googling about, I found the perfect resource:
Cocoacast and it used as its Textbook: â€œCocoa Programming for Mac OS Xâ€ by Aaron Hillegass
It is a very laid back video podcast where the podcaster instructs and screen-casts lessons based on those in the book. It is a very friendl and warm style, but at the same time structured (since it follows the book and has homework), so anyone that wants a college-type environment will find this particular format very enjoyable as well.
Of course, I was anxious to learn, so I started following the podcast without first purchasing the book, and noticed that some of the initial dialogs (creating projects and files, etc.) were a bit different, but I managed to follow along.
Then in the screencast, he began linking some objects to controls in the window and it was completely different, this was when I realized, that the book and the podcast were written for XCode 2 / 2.5, the latest version (the one that came with the iPhone SDK) was XCode 3! Luckily, Google has all of the answers, and this time, it pointed me to the publisher’s website.
I would like to state at this point that I DO plan to purchase the book. However, I am holding out for the version based on XCode 3 (the 3rd Edition), which should be published on May 26th according to Amazon.
I have had very little issue now until I began to follow the exercise regarding a Document-based application. When I created the project, I was greeted by XIB files instead of NIB files. I researched (googled) but no one else had written anything about this. I then decided to install XCode 2.5 on a second computer, and generate an empty document based cocoa application, zipped up my project, and used this as the basis of my exercise. (the RaiseMan exercise).
If I was doing something wrong (it IS odd that nothing turned up when I googled things like “xib vs nib raiseman”), perhaps selecting the wrong kind of cocoa document-based application project…please tell me so that I can post a correction to this post.
Until I stand corrected, I will assume that other people might run into the same problem. To remedy the situation and help other budding Cocoa Programmers out there, you can download an empty document-based XCode 2.5 Project.