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: 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…

µObjects: Pizza Shop - Final Changes

These are the final changes for our Pizza Shop. I think a few will be interesting to implement; but nothing stands out as a "how would I...?". µObjects make it very simple and quick to get new functionality in cleanly. One of the changes is the ability to…

µObjects: Pizza Shop - Calzoned!

The pizza shop is expanding it's offerings! CALZONES! We'll do a 1/2 calzone and a full calzone! $8 and $14 respectively. Based on how we did the Medium pizza last time... Not expecting much work for these. Which... THAT'S THE POINT! µObjects make this easy. Removing a topping... Excellent.…

µObjects: Pizza Shop new Reqs

Pizza's going great! We've got our system in place; we've cleaned up our code! We have µObjects everywhere! In my ideal; there aren't enough tests. All behavior is still covered; test coverage is at 100% for everything except our Money object. Which was pulled in from another source; so not…