After seeing one of my classes grow far too large, I decided to separate out its input handling into another class. However, in order for the input to actually do anything to the object, it needs access to its private members.
I could obviously provide public functions in the main class that input class could use, but since coupling is natural here anyway, would it be appropriate to just make it a friend? Or am I missing some pattern that would fit right in here?