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 stuck because I never did it right. I got close. I got rid of the nulls; but never the Null [Read More]

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 in the project at work. public class CacheFoo : IFoo{ private ICache<IFoo> _cache: Private IFooer _fooer: //Berevity [Read More]

My Thoughts: 'Interface' isn't harmful

My thoughts about Object Oriented Programming has evolved over the years. Especially in the past 6 months. My development of MicroObjects has caused a lot of thinking about Object Oriented Programming and how to develop better and more maintainable software. A lot of great discussions that have certainly helped drive the MicroObject concept to where it is now. One of the practices in Object Oriented Programming is Composition over Inheritance. [Read More]

Book Review: The Nature of Software Development

TL;DR: I loved the book. Go read it. Over the past few years working with a team of XP devs who've been using the XP practices for well over a decade each has taught me a lot. These amazing colleagues have helped me grow in just about every way. Including technically, which was a surprise to me. The technical growth wasn't direct from them teaching me new things; but [Read More]

My Thoughts: Unit Test - Examples

I got a tweet from boltyk on twitter asking about a post on types of unit tests. @TheQuinnGil I think I have all kind of unit test levels you described, but can you show some examples of your ideal test in the real system? Or, even better, record some TDD session doing these kind of tests?— boltyk (@boltyk) January 9, 2018 This post is from [Read More]