Technologies

Les bons outils font le bon ouvrier : SpringSource Tool Suite

Publié le : Auteur: Faycale JERDIOUI
technologies

Avoir à disposition les bons outils peut faire gagner en performance et en qualité, mais aussi rendre le code beaucoup plus agréable à produire et/ou à maintenir. Dès lors analyser une demande ou retrouver une fonctionnalité peut prendre beaucoup moins de temps et d’énergie. J’ai personnellement travaillé avec Spring et par la suite j’ai découvert le plugin STS dont je ne peux plus me passer.

SpringSource Tool Suite (STS) est un plugin qui fournit un environnement de développement pour Spring. Il offre plusieurs fonctionnalités dont voici les principales :

  • La simplification de la recherche des beans Spring grâce à la fenêtre Open Bean. Il est possible de les retrouver via leur id, de la même manière qu’on peut retrouver une classe java.
  • L’auto-complétion qui apporte une assistance dans les fichiers XML au niveau des noms des classes Java, des propriétés, des beans Spring référencés mais aussi des propriétés possibles (cette option est très pratique surtout quand on débute avec Spring).
  • Possibilité de navigation entre les beans Spring référencés ou vers les méthodes au niveau des fichiers XML (notamment pour l’injection de dépendances), cela présente un réel gain de temps mais aussi une facilité de compréhension du code. C’est très appréciable pour les développeurs surtout pour des gros projets utilisant la surcharge, l’héritage et le polymorphisme.
  •  La gestion d’erreur est aussi un avantage : STS indique les erreurs ainsi que leurs emplacements. Il est toujours plus facile de corriger des bugs quand ils sont situés dans le code et qu’ils comportent des messages clairs et précis.

Exemple d’erreur :

  • la propriété ne peut pas être définie car la méthode « set » n’existe pas.
  • le bean référencé n’existe pas.
  • la classe d’implémentation n’existe pas.
  • le bean à définir dans la propriété ne correspond pas au type de la propriété en question.

 

Grace au plugin STS il est aussi possible de déclarer directement des projets Spring. Voici un lien qui détaille la configuration de projet Spring, il contient aussi le détail ainsi que des exemples concrets des points cités dans ce post :

http://blog.netapsys.fr/index.php/post/2012/06/12/SpringSource-Tool-Suite-%28STS%29-Configuration-des-projets

  • Merci pour cet article sur STS qui est un outil impressionnant. Je me permets de rebondir sur cet article car je souhaiterais vous parler d’un de mes projets Eclipse WTP/XML Search qui aurait du entrer dans le projet WTP Incubator (voir https://bugs.eclipse.org/bugs/show_bug.cgi?id=330576 mais je n’ai pas eu le temps de m’en occuper jusqu’à ce jour -() et qui tente de donner les mêmes possbilités que STS concernant la complétion, hyperlink etc.

    Vous avez des articles que j’avais commencé sur WTP/XML Search sur http://angelozerr.wordpress.com/about/eclipse-wtp-xml-search/ pour vous donner une idée de ce que l’on peut faire. Si dans votre mission vous avez des descripteurs XML que ont des références entre eux et que vous utilisez eclipse, WTP/XMl Search peut je pense vous aider.

  • Florent Dupont

    Le commentaire initial dAngelo était en doublons 4 fois.. J’ai corrigé le problème 😉
    Merci Faycale pour la présentation de l’outil STS. Perso, j’ai tendance à alléger un maximum mon Eclipse, car il devient vite très gourmand et long à démarrer à cause des différents plugins (surtout sur les vieilles bécanes Sodifrance 😉 ).
    Avec une configuration Spring par annotation, les problèmes liés au XML que tu évoques n’ont plus lieu d’être, car ils sont vérifiés à la compilation. Cela dit l’outil serait toujours utile pour la navigation notamment sur les classes héritées.

  • Faycale Jerdioui

    C’est sur qu’il faut une machine qui le supporte, je comprend que tu ne veille pas alourdir ton environnement 🙂 et le commentaire d’Angelo est intéressant il faudrait voir ce sujet aussi.

    • Abdenour Bouetalli

      Bonjour à tous,

      Je connais bien cet outil « STS », il est intéressant, il faut juste avoir suffissamment de mémoire pour y arriver.
      Ceux qui l’utilisent dans Eclipse, je leur conseille de mettre à jour la jvm, pour cela, il faut juste modifier le fichier eclipse.ini et les valeurs des arguments Xmn(taille JVM), Xms et Xmx, activer également « parallel GC ».

      -Xmn128m
      -Xms1024m
      -Xmx1024m
      -Xss2m
      -XX:PermSize=128m
      -XX:MaxPermSize=128m
      -XX:+UseParallelGC


      Cdt,
      ABI2012

  • Sébastien Chatel

    Pour ma part je n’installe que le module « spring core » de STS. Celui qui permet d’activer divers raccourcis clavier au sein des fichier XML spring (Ctrl+Space, F3…). Je n’ai jamais vraiment eu besoin du reste…