Benjamin Sandofsky, a Software Engineer in San Francisco, California.
— Read on sandofsky.com/blog/manager-classes.html
A technical pet peeve of mine, this post does a nice job articulating why “manager” classes in software design can be a problem. To me, a “manager” class is like saying, “this class does some stuff” and the stuff has no boundary. But what does this class do? What is it’s purpose? It might be a sign of an unfocused and unsustainable design.
Or as the post says:
Managers can be a symptom of poorly-defined responsibilities. When you think about it, the word “Manager” means nothing. In object oriented programming, every class is a manager. Cocoa Touch could have
UIApplicationManager
,UIViewManager
, and even a humbleNSStringManager
.