Eclipse PDT : générer les Getter/Setter

Lorsqu’on applique le principe de l’encapsulation lors de la conception des classes, il peut devenir très long d’écrire tous les Getter/Setter (en français : Accesseur/ Mutateur) quand on a une dizaine, voir plus, d’attributs.

J’utilise Eclipse PDT comme IDE pour le développement PHP. J’ai donc farfouillé sur Internet afin de trouver un moyen de générer ces méthodes automatiquement. Mes recherches n’ont pas été très fructueuses dans un premier temps, jusqu’à ce que je tombe sur un site (1) où j’ai pu récupérer un template.

Les templates permettent de générer des morceaux de code à l’aide de mot clé directement dans l’éditeur. Par exemple, dans ma version d’éclipse, lorsque j’écris « class », ce code est généré :

class ${class_name} {
    function ${function_name}() {
        ${cursor};
    }
}

Les ${var} sont des variables de template. Vous remarquerez que ce template n’est pas à jour par rapport à PHP5, puisque le constructeur devrait être « __construct ».

Pour revenir au sujet de cet article, en modifiant légèrement le template récupéré, j’ai abouti à ceci :

/**
* @param ${type} ${dollar}${field}
* @return ${class_container}
*/
public function set${field_camelcase}(${dollar}${field})
{
    ${dollar}this->_${field} = ${dollar}${field};
    return ${dollar}this;
}

/**
* @return ${type}
*/
public function get${field_camelcase}()
{
    return ${dollar}this->_${field};
}

Pour l’enregistrer dans Eclipse : ouvrez Window > Preferences. Ensuite dans PHP > Editor > Template, créez un nouveau template. Donnez lui un nom (Name), qui sera à taper dans l’éditeur pour générer le code (ex: getset), et collez enfin le template dans « Pattern ». Vous pouvez maintenant utiliser ce template.

Au début de cet article, je recherchais à générer automatiquement tous les Getter/Setter. Hors ici, nous avons plutôt une génération semi-automatique puisque nous devons tout de même taper à la main le mot clé « getset ». Mais c’est déjà beaucoup plus rapide, un gain de temps de 60% facile je pense.

(1) désolé pour la source, mais je ne me souviens plus de l’adresse

3 réflexions sur « Eclipse PDT : générer les Getter/Setter »

  1. oui mais à 300€ la licence, je préfère prendre la solution débrouille que l’on industrialise ensuite pour toute son équipe. Ca fait 300€ x n développeur d’économisé et c’est ce que voit le patron au final, même si j’y ai passé 2 jours.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Notifiez-moi des commentaires à venir via email. Vous pouvez aussi vous abonner sans commenter.