Re:Monolith First (2015)
by Ma8ee on Saturday July 15, 2017 @06:37PM
(#14779432)
And one day you realize you have to change your data model, and absolutely all your application are coupled to your whole database. Oups!
[ Parent
| on HN ]
You can add a column to an SQL database without difficulty. If you're using one of those "turn database rows into objects" packages, you may have problems, but if you use SQL properly, it's fine. Components that are only data consumers will not even see the new column.
There is a solution for this problem: I use a monolith that make 100% of my sql queries using LINQ (including massive updates and so). Since Linq is strongly typed you can rename/remove/split tables and columns, fix compilation issues, create a migration and deploy the new monolith. We create an average of 5 migrations per day in a project with around 300 table for 2 years and no signs of an unmantainable mud so far.
Disclaimer: I'm the main developer behind Signum Framework