January 09, 2015 at 01:35PM
"When the side effects of operations are only defined implicitly ... [t]he value of encapsulation is lost." #readingToday

When the side effects of operations are only defined implicitly by their implementation, designs with a lot of delegation become a tangle of cause and effect. The only way to understand a program is to trace execution through branching paths. The value of encapsulation is lost. The necessity of tracing concrete execution defeats abstraction.

Domain-Driven Design, Eric Evans