Quantcast
Channel: Mister Tie » Architecture & développement
Viewing all articles
Browse latest Browse all 10

5 raccourcis IntelliJ qui ont changé mon quotidien

$
0
0

Tout professionnel qui se respecte se doit de choisir les meilleurs outils et de les maîtriser. Nous, les développeurs et/ou craftmen, n’échappons bien évidemment pas à la règle et au quotidien, notre EDI est un élément indispensable à notre efficacité.

Dans cet article, je vous propose de redécouvrir ensemble cinq raccourcis IntelliJ que je considère maintenant comme indispensables. Notez que ce top 5 est bien évidemment subjectif et n’a pas pour objectif de convenir à tout le monde. N’hésitez donc surtout pas à commenter cet article pour mentionner vos raccourcis favoris.

Enfin pour les non-utilisateurs d’IntelliJ, ne partez pas! Prenez le temps de piocher quelques idées ci et là. Votre EDI propose peut être un équivalent. Dans le cas contraire, ce sera là l’occasion de passer du côté obscur de la force ;).

Notes: Les raccourcis sont donnés à la fois pour Mac OS et pour Windows/Linux. Notez cependant que vous pourriez observer des différences selon la keymap utilisée.

Les extraits de code ci-après sont issus de l’atelier « Clean code » donné le 30/09 dernier lors du Craft Day chez Xebia.

Sélection incrémentale

⌘ + W / Ctrl + W (Select word at caret)

S’il me fallait garder un seul raccourci, je crois bien qu’il s’agirait de celui-ci. C’est simple; c’est une tuerie! Il sélectionne le mot correspondant à l’emplacement de votre curseur puis étend cette sélection avec les incréments logiques qui suivent.

01_selection_incrementale

Dans l’exemple ci-dessus, le mot courant est false. En répétant cette combinaison, je sélectionne ensuite:

  • l’instruction de retour;
  • le bloc contenant l’instruction de retour;
  • le bloc catch;
  • le bloc try/catch;
  • le contenu de la méthode;
  • et enfin, la méthode complète avec sa signature.

Ainsi, il devient aisé de sélectionner les éléments que l’on pourra ensuite refactorer avec d’autres raccourcis. Enfin, notez qui si vous avez trop étendu votre sélection, vous pouvez la réduire avec la combinaison ⌘ + ⇧ + W / Ctrl + ⇧ + W (Unselect word at caret).

Sélection/édition multiple

 + ⌥  + clic /  + Alt + clic

IntelliJ permet d’éditer plusieurs lignes simultanément. Une première technique pour en tirer profit est de sélectionner à la main les différentes zones d’édition. Il suffit de cliquer sur les lignes souhaitées en maintenant enfoncées les touches  et ⌥ ( et Alt):

02_edition_multiple_clic

Le curseur est maintenant multi-lignes et les actions que vous allez effectuer seront répercutées sur chacune d’entre elles. Plus intéressant encore, certaines actions IntelliJ restent disponibles; à tout hasard, la sélection incrémentale.

C’est un raccourci très pratique lorsque l’on souhaite modifier plusieurs occurrences d’un code sans que l’on puisse passer par un renommage. Un exemple classique concerne des fichiers plats ou des (mauvais) noms de variables locales partagés entre plusieurs méthodes de test. Néanmoins, cette approche n’est pas optimale car elle nécessite de sélectionner toutes les occurrences à la main.

^ + G  / Alt + J (Select next occurrence)

Dès lors, nous allons accéder aux prochaines occurrences de manière automatique. La combinaison est valable avec n’importe quelle sélection courante, du simple curseur à un bloc complet.

02_edition_multiple_selection_occurences

On bénéficie alors des mêmes avantages que précédemment. Notez que ce raccourci ne doit pas se substituer à un renommage en bonne et due forme. Enfin, la touche Echap vous permet de sortir du mode multi-lignes.

Marques-pages

Contrairement aux deux raccourcis précédents, celui qui suit est très loin de l’effet « Wahou » parfois recherché. En revanche, il s’avère des plus utiles dans un code legacy important. Imaginez par exemple que vous êtes en train de découvrir une architecture dans le cadre de la réalisation d’une US. Vous parcourez un nombre important de classes et rencontrez ci et là des points d’intérêts.

F11 (Toggle bookmarks)
⇧ + F11 (Show bookmarks)

Il est alors temps de faire usage des marques-pages. D’une manière semblable à ce qui se fait dans votre navigateur, ils permettent de marquer des points d’intérêt dans le code.

03_bookmarks

Par la suite, vous pouvez les consulter et visualiser le bout de code correspondant. C’est un excellent moyen pour retrouver ses petits au milieu d’une jungle de classes.

Note: Attention. Par défaut, le raccourci F11 est utilisé sous Mac OS pour afficher le bureau. Deux solutions s’offrent alors à vous: changer le raccourci Mac OS, ou changer le raccourci IntelliJ.

Recherche de symboles

⌘ +  + ⇧ + N / Ctrl + Alt + ⇧ + N (Navigate -> symbol)

Bien souvent, nous sommes confrontés à des bases de codes d’une volumétrie importante, dans lesquelles il n’est pas toujours simple de se retrouver, notamment si cette dernière est techniquement endettée. Par exemple, on se souvient parfois du nom d’un champ ou d’une méthode mais l’on n’arrive pas à remettre la main sur la classe contenante. Qu’à cela ne tienne! IntelliJ nous propose un raccourci du tonnerre. Voyez plutôt:

04_find_symbol

Avec la recherche de symbole, je suis maintenant capable de retrouver n’importe quel champ ou méthode d’une classe via tout ou partie de son nom. Les wildcards sont bien évidemment acceptées. Notez cependant que la recherche est un peu plus lente (1 à 2 secondes en moyenne sur mon poste) que ce à quoi IntelliJ nous a habitué pour les recherches de classes par exemple. Cela reste néanmoins toujours plus rapide que ce que j’ai pu observer sur d’autres EDI… ;)

Assemblage de lignes

^ + ⇧ + J / Ctrl + ⇧ + J (Join lines)

Pour finir, voici un raccourci qui, a défaut d’être extraordinaire, m’a rendu de fiers services. Tout comme moi, il y a fort à parier que vous vous êtes un jour retrouvé sur un projet où l’un des développeurs n’avait pas les mêmes réglages de formatage de code que les autres. Du coup, vous voici confronté à des lignes coupées en deux. Bonjour la lisibilité!

Heureusement, IntelliJ vous propose de régler tout cela en un clin d’oeil. Placez vous sur la première partie de la ligne et tapez la combinaison magique…

05_join_lines

Outre la suppression du retour chariot, IntelliJ se charge également des éventuelles fusions. Par exemple, si vous avez coupé une ligne au niveau d’une chaine de caractères, des signes + ont été ajoutés et deviendront donc inutiles une fois les lignes assemblées.

Bonus

Dans les animations précédentes, vous avez pu remarquer que les raccourcis étaient affichés lors de leur frappe au clavier. Ceci est rendu possible grâce à l’excellent plugin Presentation Assistant, proposé par Nikolay Chashnikov. Je vous le conseille fortement pour un usage lors de vos présentations ou lors de sessions de pair-programmingcoding dojo, etc. C’est un excellent moyen de progresser à plusieurs et d’échanger sur les combinaisons connues des uns et pas des autres.

Dans le même ordre d’idées, IntelliJ propose le concept d’astuce du jour. Si vous le décidez, il vous propose un (ou plusieurs) raccourcis au démarrage avec la petite explication qui va bien. Pour l’activer, rendez-vous dans le menu Help > Tips of the Day. Là encore, il s’agit d’un excellent moyen de progresser, particulièrement lorsque l’on vient de débarquer d’un autre EDI et qu’il faut réapprendre la majorité des raccourcis.

Enfin, si malgré tout cela vous ne (re)trouvez pas le raccourci qui va bien, tentez votre chance avec la combinaison ⌘ + ⇧ + A / Ctrl  ⇧ + A (Find action). Une fenêtre s’ouvre alors vous permettant de faire une recherche sur toutes les actions disponibles en vous donnant, bien entendu, le raccourci associé une fois votre action retrouvée.

Conclusion

« Mastering practices is hard… that’s why we practice! – Sandro Mancuso »

A travers cet article, j’ai cherché à vous donner un aperçu de ce qu’un EDI peut et doit vous offrir au quotidien. Quelque soit votre niveau dans l’utilisation de ce dernier, ne perdez jamais de vue que vous pouvez encore et toujours vous améliorer. Les nouveautés sont légions à chaque nouvelle version et vous permettent encore et toujours d’améliorer votre efficacité.

Sur le même sujet

 


Viewing all articles
Browse latest Browse all 10

Latest Images

Trending Articles





Latest Images