Since switching from a Microsoft Windows PC-based system to an Apple iMac, I’ve decided to explore writing applications for my Mac as well as the iPhone/iPod Touch and iPad devices. Fortunately, Apple supplies the development system (IDE) free with every OS X installation disk, so it would be no added expense to have all the compilers, etc. to create Apple applications.
I understood that programming for the Mac is done using “Objective-C”, so I purchase three programming books on the topic (as recommended on Amazon.com) to get me up to speed. So this weekend I’ve been reading parts of each of these three books and working through the various included examples. I have to say that after three days with this stuff I just want to scream!
I’ve been programming in straight C for over 20 years, and haven’t done much with C++ (which is a superset of C that implements Object Oriented Programming), so the OOP stuff is new to me. I thought I knew the basics of OOP, but after going through the Objective-C material I’m totally lost. Putting everything in classes with the @interface/@end and @implementation/@end notations, and the -/+ symbols before the method names is just nuts. Why make this so difficult? Am I just stupid? Maybe I should have bought the book, “Mac Programming for Super Dummies” because I just don’t get it.
I really like the Interface Builder tool which allows you to interactively create the application’s interface with buttons, text boxes, etc. But having to hook up those controls to the application via classes and objects is so convoluted. It might seem easy, but to me it is very confusing and difficult to come back and maintain if put aside for several months.
At one time I did some Mac programming (with the Mac Classic OS) but this NextStep Cocoa Framework stuff is really complicated. I just wonder how are so many people creating iPhone apps for the Apple App Catalog? Am I just a big dummy and can’t get it? It sure seems that way right now.
Since I usually never give up, I’ll keep at it and see if all this nonsense will make sense to me at some point in time. I’m hoping all this convoluted Class stuff is limited to mainly the GUI, and if that’s the case I can use straight C programming for the bulk of my app and just brute-force my way with the GUI coding. I’ll also do a Google search to see if anyone else feels the same way as I, and has some saged advice on how to get through this rough patch of mine.
If you have any pearls of wisdom that you would like to share, I certainly do welcome it! 🙂
Update: After doing a search on Amazon.com I found this: Objective-C for Absolute Beginners: iPhone and Mac Programming Made Easy. So hopefully armed with this book I should make more headway into Mac programming. I’ll post an update after I receive the book in a few days and let everyone know if it is truly for “absolute beginners”!