Allen Holub a écrit ce qui suit,
Vous ne pouvez pas avoir un programme sans couplage. Néanmoins, vous pouvez réduire le couplage considérablement par servilement la suite OO (orienté objet), les préceptes, dont le plus important est que la mise en œuvre d'un objet doit être complètement caché par les objets qui l'utilisent). Par exemple, une instance de l'objet de variables (champs des membres qui ne sont pas constantes), doit toujours être privé. Période. Pas d'exceptions. Jamais. Je veux dire, c'. (Vous pouvez parfois utiliser les méthodes protected efficacement, mais protégé les variables d'instance sont une abomination.)
Ce qui semble raisonnable, mais il va ensuite à dire,
Vous devriez ne jamais les utiliser get/fonctions de jeu pour la même raison, ils sont juste trop compliqués, les façons de faire d'un domaine public (bien que l'accès des fonctions qui renvoient pleine crise d'objets plutôt que sur la base d'un type de valeur sont raisonnables dans les situations où l'objet retourné est une clé de l'abstraction dans la conception).
Qui, franchement, juste des sons de fou pour moi.
J'ai compris le principe de se cacher de l'information, mais sans les accesseurs et des mutateurs vous ne pouviez pas utiliser Java beans à tous. Je ne sais pas comment vous suivez un MVC conception sans accesseurs dans le modèle, puisque le modèle ne peut pas être responsable pour le rendu de la vue.
Cependant, je suis un jeune programmeur et je en savoir plus sur la Conception Orientée Objet de tous les jours. Peut-être quelqu'un avec plus d'expérience peut peser sur cette question.