This is really question of good high level system design, so you don't need to change all code in case of small changes in overall behavior.
Other name of this is tight coupled vs loose coupled system.
This is really question of good high level system design, so you don't need to change all code in case of small changes in overall behavior.
Other name of this is tight coupled vs loose coupled system.