Previous EntryMonth IndexNext Entry Thursday, 10 May 2001  
Gazing into the Abyss: Michael Rawdon's Journal


 
 
 

Cocoa Class

This week I've been going to Cocoa class at work. Cocoa is the new name for what used to be the NeXTStep/OpenStep development frameworks, and which is now one of the development frameworks on Mac OS X.

Warning: Geekitude ahead.

In a sense, the big difference between Cocoa and many other development frameworks is the language it's written in: Objective-C. Obj-C is a highly dynamic object-oriented language which is actually quite intuitive (once you get past the fact that its syntax is quite different from C++ or Java), and even simple and elegant. It implements a few useful features like introspection (the ability of code to probe the nature of a class at run-time) far more elegantly than (say) Java does, and it includes one truly neat feature I've never seen anywhere else in categories (which can be used to add or override functionality in other classes which you don't have the source code to; it has some drawbacks, but they're more drawbacks in Obj-C's concrete design of the concept than in the concept itself).

The Cocoa frameworks' neat elements mainly rely on the neat elements of Objective-C. Other than that they're not especially different from other programming frameworks I've used. They have pieces that make perfect sense, and other pieces that seem somewhat crufty. I think any large framework will have these characteristics. (I suspect - although I have little first-hand experience - that the Cocoa frameworks are considerably cleaner than the Carbon frameworks, however.)

The biggest drawback to Cocoa is that one of the key tools used to create GUI elements is rather weak. Interface Builder is used to design the GUI forms and hook them up to the back-end controller and logic classes. As a tool for modelling the interface's look, it's actually quite strong. As a tool for hooking up the UI to the Cocoa framework classes, it's pretty weak, not really providing any substantial help in performing the connections. It looks pretty good for technology of 1993 (which, essentially, is what it is, as far as I can tell), but I think it's clearly a few steps behind, say, Microsoft Visual Basic in this regard. (This is actually not as big a slam as it seems; as an editing tool, Visual Basic is actually quite strong. VB falls flat mainly because its fundamental language, frameworks and runtime run the gamut from "weak" to "suck".)

I'm basically getting out of the class what I wanted: I'm getting more experience with Obj-C, and I'm learning the general model used to program Cocoa applications and some details of how certain key features are used. The class is well-taught, and not particularly hard, although a week's worth of classes is rather exhausting no matter what the difficulty level. I'm glad tomorrow's the last day.

And I'm looking forward to using this new knowledge when I move over to Project Builder next month!

Oh, here's the standard disclaimer: Everything I've written here is purely my own, personal opinion and does not represent the opinions of Apple computer and should not be read to imply anything on the part of Apple. The fact is I don't have any inside information about any of this stuff, so don't try to read between the lines to see if I'm giving anything away!

---

It's been a pretty busy week all around. Monday Debbi came over to my place, met the cats, saw my abode, and we hung out for the evening. It was another fun time, and we also spent a couple of hours on the phone last night.

All of this is still a good sign, right?

Tuesday I went over to Subrata's where we watched Indiscreet (1958), a romantic semi-comedy with Cary Grant and Ingrid Bergman. Bergman is a not-quite-any-longer-young maid who falls hard for the rich Grant, who tells her that he's married, separated from his wife, and can't get a divorce. They have a torrid affair over the course of several months before certain big revelations are, uh, revealed.

I'm not a big fan of Ingrid Bergman, whom I don't find especially attractive and whose acting skills don't really impress me. I do like Grant quite a bit, but not so much when he's hamming it up, as he does here. On the other hand, he practically has to to save the cliched script with its rather silly plot. There are a few good lines, but there are also a few whole scenes that make you grimace. It's certainly one of Grant's weakest films, and I'd give it a miss if I were you. There's really nothing here that isn't done much better elsewhere (or is better off not being done at all).

And last night and tonight I caught up on my television and (just in time) laundry.

Well, it's almost Friday, thank goodness. It looks like I'll be spending at least one day this weekend with Debbi, which is just fine by me! But I'll also see if I can't write on a slightly more regular schedule, too... yeah, I know, I'm ambitious.

Snort.

 
Previous EntryMonth IndexNext Entry Send me e-mail Go to my Home Page