Le Mardi 1 Octobre 2002 19:22, [EMAIL PROTECTED] a �crit : > > Par contre, une question me taraude: pourquoi est-ce si mauvais d'acc�der > � des champs d�clar�s public ? A priori c'est plus rapide que de passer par > une m�thode qui la renvoie, non ? Quel est l'int�r�t de cette m�thode ? >
Moi je suis pas favorable � supprimer tous les champs d�clar�s publics. Pour moi, un tel champ veut dire : - dans mes instances si vous changez cet attribut, je ne fais rien, - quelque soit la valeur que vous y mettez, je me comporterai correctement lorsque je serai actif. C'est assez rare d'avoir un attribut qui se comporte ainsi, mais cela arrive. Ils doivent faire partie de la trousse du programmeur. N�anmoins, dans le contexte de ta question, tu donnais l'impression, si je puis me permettre, d'user des attributs publics par facilit�, pour �viter d'�tre oblig� de n�gocier avec les encapsulations. L'usage des variables globales, que ce soit en les transmettant par param�tre, singleton ou propri�t�s, renforce cette impression de d�sencapsulation. Les getter et setter veulent souvent dire "J'ai pas r�ussi � modulariser mon programme, mais je mets des accesseurs pour �viter que cela se voit trop, et le jour o� je r�fl�chirai, j'esp�re qu'ils me serviront � quelque chose". C'est un peu ridicule, mais c'est une prudence qui fonctionne souvent bien. En tout cas, beaucoup mieux que la combine des variables globales publiques pour aller plus vite. De toutes fa�ons le mieux est que tu te fasses ta propre exp�rience ; l'usage trop syst�matique des soi-disant bonnes r�gles de modularisation est une v�ritable plaie ; on voit des "ImplImpl" (Impl�mentation de Impl�mentation), des factory de factory, des propri�t�s de getter, et j'en passe et des pires. A+. -- SARL diaam informatique - 04 50 77 12 60 Ingenierie, d�veloppements de syst�mes d'information http://www.diaam-informatique.com
