Hi Dan,
Are you familiar with DCI? "Object-oriented programming was supposed to unify the perspectives of the programmer and the end user in computer code: a boon both to usability and program comprehension. While objects capture structure well, they fail to capture system action. DCI is a vision to capture the end user cognitive model of roles and interactions between them." http://www.artima.com/articles/dci_vision.html It's always struck me that there is a similarity between DCI and Naked Objects. Lack of traits is one of the big differences sice DCI relies so heavily on them. So I'm intrigued to learn about contributions. Regards, Ged — Sent from Mailbox On Sun, Sep 7, 2014 at 10:00 AM, Dan Haywood <[email protected]> wrote: > Hi Oscar, > Yes, the are many similarities between traits and contributions. > In fact I've often thought that Isis is in some regards more of an > aspect-oriented framework than an object - oriented frameworks. At the > system level it implements presentation logic as a cross - cutting concern, > sell as the more usual security, transactions and auditing. > Using the event bus one can also book into these pointcuts at an > application level. > Cheers, > Dan. > On 6 Sep 2014 18:01, "QUALITEC - Óscar Bou" <[email protected]> wrote: >> >> Hi to all. >> >> Just to notice that I've been reading recently about the concept of >> "traits" [1] and "mixins" [2], as a way to encourage code reuse avoiding >> inheritance problems. >> >> This language features are supported by languages like Ada, Groovy, Scala >> or Python, but there's no native support for Java. >> >> It's REALLY noticeable that we, as Apache Isis users, have somewhat an >> implementation of those concepts by means of contributions [3]. >> >> So, can we think about contributions as a "traits" or "mixins" >> implementation for Apache Isis developed systems? >> >> >> Regards, >> >> Oscar >> >> >> >> [1] http://en.wikipedia.org/wiki/Trait_(computer_programming) >> >> [2] http://en.wikipedia.org/wiki/Mixin >> >> [3] >> http://isis.apache.org/more-advanced-topics/how-to-01-062-How-to-decouple-dependencies-using-contributions.html
