Teach Yourself MicroObjects: Output the Data

Encapsulation - it's a huge part of what allows us to be highly effective developers. It's what MicroObjects is about. Encapsulation is the highest thing to strive for when striving to write good code. If we encapsulate our data so effectively that we can never just access the data... how…

Technical Practices: Never Return Your Data

No Getters That's the normal form of this technical practice. No Getters There's some uncertainity around what "No Getters" means. OK, there's two versions of it. Yegor Bugayenko in Elegant Objects Vol. 1 says, It's all about prefixes That's section 3.5.3 in Elegant Objects Vol. 1.…

µObjects: Unit Testable UI Interactions

This is a follow up to the Hotel Pattern which I've pretty much abandoned, though it's concepts and ideas have evolved into my current practices. It ties into the Interface Overload mechanism I discovered as well. Though, neither fit well into the new µObject paradigm that I'm developing in. Both…

Patterns: Null Object

I've covered never having nulls and that's what the NullObject pattern is here to help us with. The NullObject pattern is one that I tried to implement earlier in my career (mostly after reading about it) and never managed to get it to stick. I now know that it never…

My Thoughts: Pass through vs Base class

A conflict that has come up a few times is using composition and a pass through or a base class I favor pass through; I write it that way Everytime. The other engineer on the project favors a base class. Here's an example of what we've encountered a few times…