a way to extract logic from controller without having to inject a million things