writing GUIs for Mac OS X

OK, so I wrote my first Mac OS X GUI application last night. It was mostly a “depth-first” exploration of how easy it is to write an application for OS X. I feel like somehow I slept through the last few years and didn’t notice that GUI building has become a lot more pleasant, thanks to some great (free) tools. My last GUIs were some kludgy Swing applications in undergrad and some SWT apps for Eclipse that I hacked on when I was at Red Hat. I wrote all the GUI code by hand, which required a shot of vodka before beginning a coding session. See this hilarious animation about GridBagLayout for a taste of what this experience is like. There’s also VEP, which became part of the Eclipse project around the same time I was pulling my hair out writing SWT apps.

Using Interface Builder for OS X is so great: write your model objects, write your controllers, drag-and-drop some UI elements onto your view, and wire up the view to your controller by drawing a connection between the view and your controller. How sweet is that? Of course, my experience was with a simple currency converter application in the Cocoa Application Tutorial, so I’m sure it gets more complex from here. I was also pleasantly surprised to find that the Objective-C 2.0 runtime on Leopard includes garbage collection! Excellent!

I’m hoping to cook up some beautiful visualization UI as a prototype for one of my term projects and use the wonderful new Core Animation stuff in Leopard. We’ll see how far I get…


About this entry