Starting My Cocoa Education

Since I’ve switched to the Mac as my main work machine, I’ve been keenly interested in developing oXcode iconn  that platform.  There have been a couple of tools I really want to build but I have no idea how to even start programming on this platform.  I figure that I might as well blog about my learning experience as well.

In the beginning, there is a number of things I needed to find out some basic information:

  • Framework/Languages
  • Integrated Development Environments (IDE)
  • Primary learning source

Frameworks/Languages item was very interesting subject as there are a number of options to choose from.  Carbon vs. Cocoa, Objective-C vs. Ruby vs. Python.  As I’m new to Mac development, I’ll start with the latest and greatest frameworks – Cocoa.  I’m not too interested in getting my code to be backward compatible with older OS releases as I don’t plan on writing any code for profit (or at least not yet.)  In addition, from the sources I’ve read, although I can write code with either Ruby or Python, I will still need to know how Objective-C works — considering Cocoa was written with Objective-C.

Since I’m more of a Lotus/Microsoft developer, I tend to like integrated IDEs for development work.  Usually there is some efficiencies to be gained if you learn/use an IDE rather just using Notepad, or whatever your text editor of choice is.  First I had to find out what programming IDEs are out there for the Mac.  Fortunately for me, there’s really only one: XCode.  So I downloaded and installed XCode 3.0 from Apple’s site and with everything else Apple, it installed painlessly. 

I would note however, everything is installed off the root of the volume you selected during the install process, rather than the Applications folder.  This took me a bit off-guard as I had to go find the assorted development applications.  Since I setup Quicksilver to update my database every day rather than every five minutes, I simply dragged the XCode app and Dashcode to my Dock.  Dashcode is another developer utility to help create widgets quickly.  I thought I’d experiment with that too.

My next challenge was to find a source to teach me all this Cocoa goodness.  Since I have a Safari subscription, I figure let me start there.  I’ve selected the book Cocoa® Programming for Mac® OS X, Third Edition.  It had a large number of good reviews on Amazon and it seem like a book that didn’t get heavy on theory.  Other reviewers also stated that this book will not teach you Objective-C, but rather how to write Cocoa applications.  This is good, as I don’t know if I need to know everything about Objective-C to write any of the applications I want.

So the basics are covered.  I’ll try to knock off a few chapters today and possibly look into some websites that can help out a Cocoa nubie.


Leave a Comment