Thin, Dumb and Pretty

2014-03-12 11:07 PM

MVC Applications should be Thin, Dumb and Pretty.


Don't make your actual MVC application responsible for a lot of tasks. It should handle collating data from a few (okay, maybe many) sources, displaying it to a user, and persisting that data back to those few (many) sources.


Core business logic doesn't belong in MVC. If you have a monolithic software pattern, the core logic belongs in your huge service. If you follow a more microservice architecture, your MVC application should just be consuming and feeding disparate services. When the application gets smarter than that, business logic starts creeping up toward the top - exactly where you don't want it.


Code isn't pretty to anyone who's not a developer. MVC's primary responsibility in an enterprise context is to display information to a user. Make its primary responsibility be displaying information in an intuitive way.