mercredi 13 août 2008

Magie de toString(). Eclipse. Plugin

Bonjour,
Aujourd’hui je voudrais parler d’un plugin génial pour Eclipse - JUtils ToString Generator for Eclipse.

Tout d’abord un peu de théorie de Java et de la programmation en général. Les professionnels du métier conseillent de donner une représentation textuelle aux objets.

Par exemple, vous avez un objet ‘BankAccount’ qui contient certains nombre de champs :
id, creationDate, solde, owner, isblocked… Quand vous faites

System.out.println(‘account state :’+bankAccount);

vous allez voir sur la sortie :

account state :@456FF1

si la méthode toString() de l’objet n’a pas été redéfinie.

Un pointeur @456FF1 sur l’objet dans le heap du Java ce n’est pas très utile.

Ce pour ça dans la plupart de cas il est intéressant de redéfinir la méthode toString() et présenter l’état de l’objet en affichant les valeurs de tous ces champs. Dans le cas de notre exemple, je voudrais voir quelque-chose comme ça :

account state : id = ‘870876786’ ; creationDate = ‘15/12/2001’ ; solde=’7800.70’ ; owner=’Paul Dubois’ ; isBlocked=false.

C’est plus utile. Surtout pendant du débogage ou du traçage ! Croyez-moi, ça vous aidera à trouver de bugs plus vite.

Par contre, il faut redéfinir la méthode toString(). Cela est pénible, on est paresseux et finalement on ne le fait pas.

Avec Eclipse et le plugin JUtils la méthode toString se génère automatiquement !


Allez sur le site http://eclipse-jutils.sourceforge.net/, télécharger la dernière version, dezipez dans le répertoire plugin d’eclipse. Clique droite dans l’éditeur du Java, en bas de Menu ‘JUtils ToString generator’ et suivez des instructions…

Attention ! Cette méthodologie (la représentation textuelle des objets) est déconseillée pour les applications critiques aux mémoires. L’exécution de cette méthode pour un graphe compliqué des objets peut nuire des performances de votre application.

Bonne soirée!