I just finished a 3,500-word column on Naked Objects for an upcoming issue of Linux Magazine.

Naked Objects, unveiled at OOPSLA in November 2002, is a groovy open source framework for developing Java software that exposes objects and their methods directly to users. Using reflection, the objects and their methods are discovered and made available in a generic user interface (screenshot).

The goal is to create software that consists of "behaviorally complete" objects which genuinely embody the principles of object-oriented programming. Developers Richard Pawson and Robert Matthews have written a great book, available in full text on the Web, that documents the project and explains their motivations.

The approach is controversial, as you might expect -- usability guru Larry Constantine makes it sound like the death of all he holds holy -- but there's a definite appeal in creating objects that can be used immediately, making flaws in the design evident.

I'm still undecided on the overall usefulness of the framework, but even if the generic interface is too wonky for wide use, it looks like a great boon in several areas:

  • Teaching object-oriented programming
  • Designing objects for the model portion of a model-view-controller application
  • Hacking together quick Java applications for personal use

-- Rogers Cadenhead

Add a Comment

These HTML tags are permitted: p, b, i, a, and blockquote. A comment may not include more than three links. Participants in this discussion should note the site's moderation policy.

:
:
: