Every abstraction has a cost
Every abstraction has a cost.
Some abstractions don’t provide enough value to offset their cost.
Examples:
A function only called once with a single, simple line of code.
A REST API with only a one consumer, and the consumer could have called the DB directly.