In this vlog, we are adding a feature to a basic CRM application to illustrate how the UI concerns can creep in on our Business model’s concerns.
This is just the prelude to the actual MVVM video, so we are just staging the problem and a follow-up blog post will cover the actual refactoring video.
It’s worthwhile to remember that this is a small application, so imagine larger projects with bigger entities and multi-faceted aspects to multiple domain entities.
User Story goes bump in the night…
As a user
I want to hide empty contact fields
So that I have a clean view of available contact details
Resulting project changes
This simple requirement will increase our domain model’s size by 75%, create 10 microflows for calculated/virtual attributes and will mix 2 concerns, namely email contact-ability with phone contact-ability.
Grab the popcorn
Enough said, let’s watch Part one of MVVM