Oui, les classes utilitaires sont une bonne idée, mais, comme avec l'ensemble de la programmation orientée objet, vous devriez viser pour un maximum de cohésion, un minimum de couplage.
Une cohésion signifie que tout dans une seule classe devrait être fortement liés les uns aux autres. Minimes de couplage signifie qu'il devrait être pas inutile de dépendances entre les classes.
En d'autres termes, la formation de grumeaux ensemble de compression avec la manipulation de l'image ou le lancement d'un processus externe, dans une classe unique est une mauvaise idée. Par tous les moyens d'avoir un utilitaire de compression de classe et une image de l'utilitaire de manipulation de cours, mais ne pas les mettre ensemble.
Cela est semblable à l'utilisation d'un singleton comme un dieu objet, un ghetto où vous venez de vider tous vos déchets doit être mieux organisée. Je dirais que c'est correct d'utiliser un uber-utilitaire de la classe pendant le développement, mais assurez-vous que votre code est mieux organisé avant l'expédition. L'entretien sera beaucoup plus facile.
Est-ce une bonne pratique?
Non, pas dans le long terme bien que c'est utile quand fait temporairement.
Les choses vont grandir ingérable quand le nombre de fonctions de croître plus en plus grandes?
Oui, aucun doute à ce sujet.