I don't see separations like some form of MVC primarily as a way toward code reuse. Rather, for me, they just reduce the mental effort I have to expend at a given point in time. If I have a bug in validating a form parameter, I can work on it in the controller without having slog through the html that showed the form or the SQL which retrieved the old values the user was trying to edit.
The older I get, the less I can hold in mind at a time. Separation of concerns lowers the volume I must keep in the front of my mind at an instant of debugging. If I can reuse the code because of separation, that's a bonus.