September 14, 2009

Objective C for the iPhone or iPod

I finally decided to sit down and start working with Objective C, namely to expand my development areas into the iPhone and iPod areas. Not that I have any current grand ideas, however I had been meaning to create my own version of lights out and though it might be a good time to get to work. However, who know it may be worth paying the $99 developer fee in the future, but right now I am looking at jail broken device deployment only.

Objective C is similar and at the same time quite different from regular c/c++. One of the biggest differences is that you can use the dot operator, but also have the option of sending messages instead or a mix of the two. For example you could have class.method(input); or you could do [class method:input]; At first this was a little strange, however after a few hours I started to like it a little as it clearly defines what is processing code and what is message code.

Another change for me was using the Interface Builder in xcode. I had played with it briefly before, however I have never actually sat down and used it. It took me a while and some google searching however once I realized that I needed to add a method reference in the .h file as well as the .m file I could then see the links in interface builder. After that I was golden and quickly linked the button in my first game to UIBUttons that could be referenced in the code as well as a single buttonPressed method. HINT: Copy and paste is much faster then doing it individually. This reminded me a little of working in VBStudio as you could design the interface and then do the code second, however unlike VB, C is a little more demanding and requires hand coding instead of a double click on the UI element adding the code for you. Still, minus the some what steeper learning curve it was actually not too bad, and as a bonus I know now how to use Interface Builder in regular OS X development as well.



After ten hours or so of teaching my self objective c, I can now present BlackOut and simple lights out game. You need to have a jail broken device to install this, as I am not paying Apple $99 to give out a free application. Enjoy.

No comments: