µObject Poker: Scoring a Hand

I found I'm not a huge fan of the video. I don't tend to put a lot of time and effort into each post; it's an opportunity for me to share research and experimentation with the world; as well as give myself a searchable brain. :) The video took WAY too…

M:TG Game - Event Bussing

I've been pondering how to do some µObjects in a more intelligent system for a while. I'm going to try to use Magic: The Gathering for this. Much like the poke one; the idea here is to explore µObjects and how they can be applied in more situations. With the…

µObjects: Fluent Types

I expect us all to be aware of the anti-pattern Primitive Obsession. If not - there are some quick resources available. Now that we have an idea of Primitive Obsession; I'll give my reason(s) for not using primitives. The core of Primitive Obsession is to not represent a concept…

µObjects: Being Assertive

Being assertive is about being self-responsbile. Being assertive is about an object being lazy. This also has the object doing all behaviors for the state it holds. It follows from encapsulation that an object will be assertive. How do µObjects encourage this? µObjects do a single thing, and you need…

µObjects: Being Encapsulated

Encapsulation for objects is, IMO, how well the data is hidden. Encapsulation is only acting via behavior from an object. Never getting data and doing something. A well encapsulated object is also a very cohesive object. These traits tend to enhance each other. µObjects encourage this. How do µObjects encourage…

µObjects: Being Loosely Coupled

Loose coupling is about how much a class knows about the objects it's using. The less a class knows about the components it is using; the better the decoupling. Or they are loosely coupled. How do µObjects fair with being loosely coupled? That's what I want to show today. µObjects…

µObjects: Being Cohesive

Cohesion for objects is how well the behaviors in the class belong together. Some very non-cohesive behaviors would be multiplying two numbers and splitting a string. Multiplying and Raising to a power can be very cohesive behaviors. How do µObjects do cohesion? That's what this is about. The simplest is…

µObjects: Pizza Shop - Review

The Pizza Shop The Start More µObjects New Requirements Calzoned The Final I started the Pizza Shop example to show how to apply µObjects in code; Using a very similar process I do in production code. From there, working through the changes and applying them. Originally I hoped to show…