2 ms·
> different modules and services should try to hide their implementation details as much as possible > but as soon as an SQL database comes into the mix, we ha
by gwbas1c 6y ago
> different modules and services should try to hide their implementation details as much as possible
> but as soon as an SQL database comes into the mix, we happily throw all that hard-earned discipline out the window
The data belongs to the database, not to whatever program you happen to work on at the moment.
IMO, the impedance mismatch situation is a result of poor programming language design. Saying that the database abstraction "leaks" into your code is backwards; the shortcomings of your programming language "leak" into how you're handling your data.
- mumblemumble 6y agoI tend to blame the impedance mismatch more on the popularity of "entities" as a way of doing domain modeling in object-oriented programming. It's far from the only way to do domain modeling in an object-oriented language. It's not necessarily even a particularly good way, and it creates problems even if your app comes nowhere near a database.