Yep, this is exactly what I had in mind when talking how the available tools 
drive your design decisions. An ability to add something to the object in a 
given context can be a game changer. It was there in Objective C, but is not 
present in the vanilla Java. 

Andrus


> On Jun 12, 2015, at 12:14 PM, Aristedes Maniatis <a...@maniatis.org> wrote:
> 
> On 12/06/2015 6:01pm, Andrus Adamchik wrote:
>> To summarize, both domain-centric and service-centric architectures have 
>> their advantages and downsides. In an ideal world there should be just the 
>> right mix of the two. Achieving that can be hard sometimes, and the actual 
>> proportion depends on the scope of the system and the tools that you have in 
>> your possession. 
> 
> I'm really liking Groovy these days. It has a concept of "categories" which 
> allow you to inject additional methods right into your domain objects.
> 
> http://docs.groovy-lang.org/latest/html/gapi/groovy/lang/Category.html
> 
> I'm still getting my head around how that changes the architecture of 
> systems, but the ease of mixing groovy inside Java applications is allowing 
> us to explore aspects of this right now. For example, to enhance Cayenne 
> objects when passing them into JasperReports for printing.
> 
> 
> If Dima is lurking around here, he'll have more to say since I know he is 
> liking the groovy approach.
> 
> Cheers
> 
> Ari
> 
> -- 
> -------------------------->
> Aristedes Maniatis
> GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A
> 

Reply via email to