Thursday, June 07, 2012

Naked Objects for Mobile

Why not, I ask?

The Naked Objects Pattern has been an idea that I've always found interesting and useful for quick-n-dirty apps.

The Apache Isis way of NO seems a little bit overwrought (as most of Apache projects are), but I've been following JMatter for quite a while now and have been impressed despite it being a Swing-only UI.

For the simple one-user app, the NO pattern seems sufficient: the thing gets built quickly, there's lowered expectation of customized UI from the user and probably even platform portability.

3 comments:

Unknown said...

We're steadily simplifying the Isis codebase... we recognise that there's too much complexity in it and that's liable to impede its ability to grow the community.

Your post was titled "Naked Objects for Mobile"... so you might be interested in the Restful Objects spec I've been working on, basically a JSON hypermedia API for domain objects. One application of this, obviously, is single-page Javascript apps.

Isis supports an earlier version of the RO spec, and NO.MVC (on .Net) is pretty much complete.

Hope that's of interest...

Dan

vinod said...

Wow.. didnt expect somebody from Isis to actually comment on my no-marketing blog!

Thanks for stopping by Dan.

I've actually been looking at the documentation for Isis and its pretty comprehensive. I just feel that the problem its trying to solve - be the one stop generator for all the ORMs and Ui toolkits we have in the Java world is contributing to its size.

As for mobile: yes, a json-based middle tier seems an obvious thing to have; but I was tending more towards native clients that seem to recreate all the problems we have in traditional n-tier arch again - in their own ways. It would be nice to be able to take a bunch of pojos or Objective-C classes and have the "Mobile NO Framework" just build out the default UI. That's more where I was going with this idea.

Unknown said...

Yes, I agree with your view that Isis shouldn't be a "one-stop generator" for ORMs... there are other frameworks out there that do the ORM stuff as their sole concern. I'm considering pitching JDO/DataNucleus to the Isis community as being the one ORM that Isis depends on. That should help us continue to simplify its codebase.

On the other hand, I think it's right that Isis supports multiple UIs toolkits: choose your poison! And the restful viewer makes a good common denominator if we don't support the UI toolkit you want.

As for pojo/Objective-C classes running natively on the viewer, well, that has been done in (within a student project) about 10 years ago on an early version of the NO framework. But for myself I'm not sure that I particularly like the architecture.

Dan