Systems similar to NakedObjects?

Some time ago I read a book about Naked Objects and was delighted with ideas. Writing just my core business logic and automatically creating a user interface? Sign me up!

In addition, the potential goes beyond that. This can be a great tool for domain modeling. With the ability to directly call one object, it is recommended to use one domain object, after which you can find ...

  • Defects
  • Useful interaction patterns (for implementing the user interface, it is especially appropriate if you are of the opinion that the user interface basically “creates scripts of domain objects”)
  • New features.

For this purpose, I'm interested in any systems like Naked Objects. I did some work, such as finding hits under strings like "Direct Manipulation UI", but didn't find anything useful.

Do you know about any work on similar lines? I would prefer something in PHP or JavaScript, and this does not imply that I am running a Linux box. I know NakedPHP and Spiro (I cannot find documentation for this), but both of them are mostly implemented as Naked Objects for PHP and javascript respectively.

Do you know about any other systems?

+5
source share
2 answers

I came across several other possible key terms and found several, though not all, in javascript.

They seem to be better suited ...

Metawidget is especially interesting. It supports javascript and is easy to use. You can simply provide it with your domain model (JSON object) and create a user interface for it. In addition, it does not capture your page, so it can live in an existing user interface and allows you to customize the user interface.

They also include a comparison page with similar products.

Another interesting BlueJ ; it is an educational platform based on (the idea?) "Naked objects", but can be used for small projects. Basically, you can graphically create instances of your class through the context menu, then you can test and call the resulting methods of the object in the same way (potentially creating more objects in the process).

Going further, looking at any auto-generation of the user interface, there are CRUD visualizers tied to the database.

I am still researching these, especially object ones, and am open to other suggestions.

+2
source

As a co-author of Naked Objects, I would like to add my opinion.

Often, people really like the concept of a bare object template, but they don’t like the specific user interface. You did not say how long you looked at the implementation, or really, which one. Two main open source implementations (there are several others, but less installed):

  • .NET framework Naked Objects
  • Apache Isis for Java Platform

both of them have more than one user interface. But let's assume that you looked at all the user interfaces by default and are not happy with any of them. Firstly, most people who use either the framework for corporate configuration end up setting the default user interface using either just .css or using additional JavaScript, but still sticking to the concept of a “common” user interface that is created dynamically .

More recently, Dan Heywood and I have been very attentive to the idea of ​​a nudity template with the introduction of the Restful Objects specification - an ultra-clean REST API that works for any rich domain model. Both implementations of two bare objects now also implement the Restful Objects specification. The fact is that using the RO API it is now relatively easy to develop new, radically different user interfaces (general or fully custom-made) that speak with the implementation of the RO server. In other words, it is relatively easy to create your own implementation of the concepts of bare objects on the client side, reusing one of the two main server implementations.

The Spiro you mentioned is our first attempt to create a building block library to create such a user interface using JavaScript (TypeScript, actually) and Angular.js. And the cool thing about using the RO specification is that you can run the same client against any server implementation. I recommend that you look at it carefully.

+7
source

Source: https://habr.com/ru/post/1214114/


All Articles