I was listening to Greg Young on Herding Code and much of what he was saying made perfect sense and stroked my developer instinct in exactly the right way. Of...
For 'at this point the customer address should be xyz' you don't have to get the address out of the entity. You could provide the address to the entity that...
... Why does the state need to be public in order to "check" it in terms of validation? Can't that happen within the the Customer object? Also in terms of...
Interesting. So are you saying that rather than directly representing the object in the domain the entity represents the behaviors of the object in a valid...
Hi all, I am currently planning a new billing system for one of our customers. A few operational systems are going to user the billing system as a service....
This is not DDD this is OOP the whole concept of encapsulation. Tell don't ask is a principle associated with this. Cheers, Gre ... -- Les erreurs de...
Greg, I believe you are missing the point. George is not asking about OOP or best principles, but only if this practice hurts the Ubiquitous language as he...
Giovanni, The state *is* there ... it is just not exposed nor should it be. It does not affect the ubiquitous language because the state is still there when...
Hi guys, I'm wondering what's your take about where presentation models get dealt with? E.g. screens where we do complex search/filtering then display the ...
Why would CQS lead to logic duplication? A query model contains data to display to the user interface, the command model supports actions to alter that state....
What duplication? It is the same amount of code just put into different places. Also it does not *have* to be against 2 different data sources .... using 2...
My biggest problem with CQS at the moment, is that processing Command inevitably involves queries. From my understanding, however, command context doesn't...
Not sure what I was trying to say there :P That should read: My problem is: while in some particular cases, domains for query and command are different, but in...
Sorry to jump in to the discussion.... in fact I am not exactly sure if I understand your question totally.... but if you find that are duplication of logic,...
Extracting into reusable methods become harder when we deal with 2 different domains and separate bounded-context. I can only refactor so much, but i still...
Would you mind post some code? Does interface help? ... Would you mind post some code? Does interface help? On Fri, Jul 3, 2009 at 10:03 PM, Hendry Luk <...
Hello, The architectural context here is event sourcing, CQS, and SOA. So if aggregate roots form consistency boundaries for transactions... Am I correct in...
Hi group, I need some help how to model the following problem: The application I want to model is a web application. The application provides news items on an...
I'll pick an example from Greg's example of adding item to order, and try to put my understanding of the presentation into this code. We have a AddProduct...
... It sounds like you should abstract up to the essence of what these objects represent. Request and Response aren't really concepts that are specific to the...
Hi Carfield, Could you please more elaborate? Is facade a domain concept and in which module (package) should it go? Could you please give a (simple) example? ...
Hi Dan, The thing you say about Request and Response seems to be true. I've never thought about it in that way. However, I don't get what you mean with the...
... In your first post you said: "A business rule is that the user can only get a news item once. " So you need the concept of User in your domain somewhere. ...
Dan, Thanks for your prompt reply. The user is identified by the getRemoteUser() method (on the Request object). It is just a String object, so I don't think I...
... Okay, well that's helpful. I'd still argue for a User domain object; it's one of the important concepts in your domain. ... Crikey, does that scale?...
If the problem is limited to only News then no User concept is introduced yet. We have a Visitor that is came to us from a repository. The repo constructs the...
... I would introduce the User concept even if all I've done is identified the concept and nothing else. I tend to find that after a while one finds...
Hi jps, I suppose you can establish a rule (e.g., as part of your coding convention) that would prevent a transaction from spanning across multiple aggregates....