Beginner’s Guide to Learning Cocoa Programming

I recently decided that I wanted to learn to program in Cocoa. There wasn’t really a good reason for me to learn it, aside from my desire to learn a new programming language.  Also it would be nice to know how to make Mac and iOS apps.

I looked around the net for a good beginner’s guide to learning Cocoa.  I found one that I highly recommend.  But, before I talk about the book I used to learn Cocoa I should give a quick note about my programming experience.

Prior to entering the PhD program here at CU Boulder, I have no experience programming at all.  As my research progressed, I have become rather proficient at programming in Fortran.  In addition to Fortran, I have taught myself scripting languages such as Python, Bash, C-shell, perl, etc.

So basically, before learning Cocoa I had no real experience programming in an Objective-based language.

The book that I recommend for beginner’s looking to learn Cocoa is Cocoa(R) Programming for Mac(R) OS X (3rd Edition).  The author of the book gives some very detailed and low level instructions on how to create Apps.  In addition to the examples given in the book, the author also provides the reader with “problems”.  Basically you are given a task to create an app that performs certain functions.  Then you are to develop the app from scratch.  The book does not give any details/help/solutions to these problems.  The solutions are probably available online, however you always learn more if you attempt the problem on your own without help.

Once you have completed the book, a good app to develop that brings most everything together is a working Scientific Calculator.

For a good review of this book, see this post by Bob Rudis.

Need help with some of the Challenges in the book?  Post your question in the comments and I will do my best to answer them.

Enhanced by Zemanta

One thought on “Beginner’s Guide to Learning Cocoa Programming

  1. So nice posting like your working

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

This site uses Akismet to reduce spam. Learn how your comment data is processed.