🗒️ Software Engineering 101: Separation of Concerns
This concept describes that every "thing" that you can use to organize your software (module, function, class, service) should only be responsible for one aspect of the overall picture.
Put simply: If two things are different, they should be in different places.
This sounds simple enough, but in practice it's often tempting to just quickly add a small functionality where it doesn't belong - because it's way faster.