{"id":34306,"date":"2020-06-10T07:26:25","date_gmt":"2020-06-10T06:26:25","guid":{"rendered":"https:\/\/blog.jetbrains.com\/fr\/?p=788"},"modified":"2020-06-10T07:26:59","modified_gmt":"2020-06-10T06:26:59","slug":"ecrivez-du-code-plus-rapidement-grace-aux-live-templates","status":"publish","type":"post","link":"https:\/\/blog.jetbrains.com\/fr\/2020\/06\/10\/ecrivez-du-code-plus-rapidement-grace-aux-live-templates\/","title":{"rendered":"\u00c9crivez du code plus rapidement gr\u00e2ce aux Live Templates"},"content":{"rendered":"Qu'il s'agisse de vous pr\u00e9parer pour une d\u00e9mo de code ou d\u2019\u00e9crire du code dans le cadre de votre travail au quotidien, les live templates sont une super solution pour vous aider \u00e0 le faire plus rapidement. Vous pouvez taper seulement quelques lettres et vous en servir pour d\u00e9velopper un code beaucoup plus long.\r\n\r\nDans cet article, je vais vous expliquer pourquoi et comment utiliser les live templates. Vous verrez \u00e9galement comment cr\u00e9er de nouveaux templates et les partager avec les membres de votre \u00e9quipe. Commen\u00e7ons par les templates simples.\r\n\r\n\r\n\r\nTemplates simples\r\nLes templates simples ne contiennent que du texte brut fixe. Lorsque vous d\u00e9veloppez un template simple, le texte est automatiquement ins\u00e9r\u00e9 dans votre code source en remplacement de l'abr\u00e9viation.\r\n\r\nImaginez que vous vouliez ajouter la m\u00e9thode main \u00e0 votre code. Pour ce faire, tapez \"main\" et appuyez soit sur la touche Tab, soit sur la touche Entr\u00e9e pour le remplacer par la m\u00e9thode main. Vous pouvez \u00e9galement le faire en tapant \"psvm\", qui est l'acronyme de public static void main. Les templates \"main\" et \"psvm\" sont des live templates simples IntelliJ IDEA. Je pr\u00e9f\u00e8re g\u00e9n\u00e9ralement utiliser \"main\" parce que c'est plus simple \u00e0 retenir.\r\n\r\nPour sortir une valeur sur la console, tapez \"sout\" et d\u00e9veloppez-le en System.out.println. Ce live template est int\u00e9ressant et a plusieurs versions, parmi lesquelles\"soutv\", \"soutp\", \"soutm\" (vous pouvez voir comment elles varient dans le gif inclus dans cette section).\r\n\r\nVous pouvez \u00e9galement utiliser des live templates pour d\u00e9finir des champs ou des variables. Par exemple, utilisez \"psfi\" pour g\u00e9n\u00e9rer du code pour un champ public statique final int.\r\n\r\n\r\n\r\nMais ce n'est l\u00e0 qu'une petite partie de ce que vous pouvez faire avec les live templates.\r\nLive templates param\u00e9tr\u00e9s\r\nLes templates param\u00e9tr\u00e9s contiennent des variables qui peuvent accepter votre input. Lorsque vous d\u00e9veloppez un template param\u00e9tr\u00e9, les variables sont soit remplac\u00e9es par des champs de saisie que vous pouvez sp\u00e9cifier manuellement, soit calcul\u00e9es automatiquement par IntelliJ IDEA.\r\n\r\nImaginez que vous vouliez ins\u00e9rer une boucle for pour it\u00e9rer sur les num\u00e9ros 1 \u00e0 10. Au lieu de saisir tous les d\u00e9tails de la boucle, vous pouvez simplement taper \"fori\" et l'\u00e9tendre \u00e0 une boucle for. Si vous ne souhaitez pas modifier le nom de la variable de la boucle, appuyez sur la touche Entr\u00e9e pour passer \u00e0 l'autre placeholder.\r\n\r\nLorsque vous tapez \"for\", vous pouvez acc\u00e9der \u00e0 plusieurs variations de la boucle for\u00a0: \"for\", \"fori\" et \"foreach\". Chaque template est accompagn\u00e9 d'une br\u00e8ve description, qui peut vous aider \u00e0 choisir l'option qui vous convient le mieux.\r\n\r\nUne autre instruction de contr\u00f4le que nous utilisons souvent est l'instruction if. Si vous saissez\u00a0\"if\" et appuyez sur Tab, IntelliJ IDEA ajoute l'ensemble complet des parenth\u00e8ses pour vous. L'une de mes fonctionnalit\u00e9s pr\u00e9f\u00e9r\u00e9es est la commande Complete Current Statement, qui ajoute \u00e9galement les accolades manquantes. Une variante de l'instruction if, si vous utilisez \"ifn\", IntelliJ IDEA g\u00e9n\u00e9rera du code pour v\u00e9rifier la pr\u00e9sence de variables non null.\r\n\r\n\r\n\r\nAvez-vous remarqu\u00e9 que les diff\u00e9rents live templates apparaissent lorsque vous commencez \u00e0 les saisir\u00a0? Mais comment pouvez-vous savoir si ce qui appara\u00eet est un live template, une m\u00e9thode ou un mot cl\u00e9\u00a0? Supposons que vous tapiez \"c\" : vous obtenez alors, entre autres, les options clone(), char, class, \"cxf\". Les noms des m\u00e9thodes sont suivis de parenth\u00e8ses, tandis que les mots cl\u00e9s n'ont pas de description. Un mod\u00e8le dynamique tel que \"cxf\" comporte g\u00e9n\u00e9ralement une description et n'est pas suivi de parenth\u00e8ses.\r\nLive templates surround\r\nAvec un live template surround, vous pouvez envelopper le code du bloc s\u00e9lectionn\u00e9 avec un autre morceau de code. Appuyez sur Ctrl+Alt+J sous Windows et Linux, ou \u2325\u2318J sous macOS, pour ouvrir la fen\u00eatre contextuelle Select Template. Ce mod\u00e8le enveloppera votre code avec une paire de balises et vous pourrez ensuite modifier ou ajouter les morceaux de code manquants.\r\n\r\n\r\nVisualisation de tous les Live Templates existants\r\nIntelliJ IDEA d\u00e9finit un grand nombre de live templates. Si cela vous int\u00e9resse, vous pouvez tous les d\u00e9couvrir et voir comment les utiliser.\r\n\r\nPour voir tous les live templates, acc\u00e9dez \u00e0 la bo\u00eete de dialogue des param\u00e8tres en appuyant sur Ctrl+Alt+S sous Windows ou \u2318Virgule sous macOS. Recherchez des live templates. Ils sont regroup\u00e9s par langage ou par fonctionnalit\u00e9 \u2013 it\u00e9rations, Kotlin, Maven et autres.\r\n\r\nVous pouvez cliquer sur quelques-uns d'entre eux pour conna\u00eetre le code qu'ils ins\u00e9reront lorsque vous utiliserez les abr\u00e9viations correspondantes. L'exploration de ces divers templates peut \u00e9galement vous \u00eatre utile si vous d\u00e9cidez de cr\u00e9er v\u00f4tre propre template.\r\n\r\nExaminons les d\u00e9tails du template \"sout\", que nous utilisons fr\u00e9quemment. Lorsque vous utilisez ce template, votre curseur est plac\u00e9 entre les parenth\u00e8ses. La variable END d\u00e9finit la position du curseur.\r\n\r\n\r\nCopier un Live Template existant\r\nVous pouvez cr\u00e9er un nouveau live template en copiant et en modifiant l'abr\u00e9viation d'un live template existant, ainsi que le code qu'il ins\u00e8re.\r\n\r\nPar exemple, modifions le template Surround with Callable afin qu'il enveloppe le code s\u00e9lectionn\u00e9 dans une expression lambda au lieu d'une classe anonyme.\r\n\r\nAllez dans Settings, s\u00e9lectionnez Surround with Callable et cliquez sur l'ic\u00f4ne duplicate. Renommez ce template en CWithLambdas et changez la description en Surround with Callable using Lambdas. Modifiez le texte du template afin qu'il utilise des lambdas.\r\n\r\nVous avez maintenant la possibilit\u00e9 d'appliquer ce template \u00e0 votre code.\r\n\r\n\r\nCr\u00e9ation d'un nouveau Live Template\r\nSi la modification d'un mod\u00e8le existant ne r\u00e9pond pas tout \u00e0 fait \u00e0 vos besoins, vous pouvez cr\u00e9er un nouveau mod\u00e8le dynamique de A \u00e0 Z.\r\n\r\nImaginez, par exemple, que vous ayez souvent besoin d'ins\u00e9rer une m\u00e9thode de test dans votre code. Vous pouvez cr\u00e9er un nouveau mod\u00e8le dynamique pour vous faciliter la t\u00e2che.\r\n\r\nAllez dans Settings | Live Templates et cliquez sur l'ic\u00f4ne plus. Vous pouvez choisir de cr\u00e9er un mod\u00e8le dynamique ou un groupe de mod\u00e8les. IntelliJ IDEA regroupe ses live templates soit par langage, soit par fonctionnalit\u00e9. Vous pouvez \u00e9galement cr\u00e9er un groupe tel que TDD (Test Driven Development) si vous pr\u00e9voyez de cr\u00e9er plusieurs live templates li\u00e9s aux tests.\r\n\r\nPour cr\u00e9er un nouveau mod\u00e8le dynamique, vous devez ajouter une valeur pour son abr\u00e9viation, une description et le texte du mod\u00e8le. Vous pouvez \u00e9galement d\u00e9finir des variables dans le texte du mod\u00e8le et les configurer en sp\u00e9cifiant des \u00e9l\u00e9ments tels que leurs valeurs par d\u00e9faut, entre autres d\u00e9tails. La derni\u00e8re \u00e9tape consiste \u00e0 d\u00e9finir le contexte d'un mod\u00e8le dynamique, qu'il s'agisse entre autres d'un commentaire, d'une d\u00e9claration, d'une expression, d'une saisie intelligente, d'une d\u00e9claration ou d'une cha\u00eene. C'est important pour que votre mod\u00e8le dynamique n'apparaisse pas partout mais seulement l\u00e0 o\u00f9 vous en avez besoin.\r\n\r\n\r\nPartager des Live Templates\r\nUne fois que vous aurez cr\u00e9\u00e9 vos propres live templates, vous voudrez peut-\u00eatre les partager avec les membres de votre \u00e9quipe. Pour ce faire, vous pouvez exporter les param\u00e8tres d'IntelliJ IDEA vers un fichier. Pour exporter uniquement les live templates, vous pouvez d\u00e9cocher les autres options. Apr\u00e8s avoir export\u00e9 le fichier, les membres de votre \u00e9quipe peuvent l'importer en utilisant les param\u00e8tres d'importation (ils devront peut-\u00eatre red\u00e9marrer IntelliJ IDEA pour voir les param\u00e8tres mis \u00e0 jour). Regardez le screencast inclus en haut de cet article pour voir comment partager vos live templates.\r\nEn r\u00e9sum\u00e9\r\nPuissants et extr\u00eamement polyvalents, les live templates vous rendent plus productifs.\r\n\r\nIls acc\u00e9l\u00e8rent votre d\u00e9veloppement en r\u00e9duisant le volume de caract\u00e8res \u00e0 saisir manuellement. Vous pouvez utiliser les live templates pr\u00e9d\u00e9finis dans IntelliJ IDEA. Vous pouvez \u00e9galement les modifier ou cr\u00e9er les v\u00f4tres, ajoutant ainsi un niveau de personnalisation. Votre \u00e9quipe peut b\u00e9n\u00e9ficier des live templates que vous avez cr\u00e9\u00e9s\u00a0: partagez-les simplement avec elle.\r\n\r\nBon d\u00e9veloppement\u00a0!\r\n\r\nAuteur de l\u2019article original en anglais :\u00a0Mala Gupta","protected":false},"excerpt":{"rendered":"Qu'il s'agisse de vous pr\u00e9parer pour une d\u00e9mo de code ou d\u2019\u00e9crire du code dans le cadre de votre travail au quotidien, les live templates sont une super solution pour vous aider \u00e0 le faire plus rapide","protected":false},"author":{"name":"Delphine Massenhove","link":"https:\/\/blog.jetbrains.com\/fr\/author\/delphine-massenhovejetbrains-com"},"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[601],"tags":[5429],"cross-post-tag":[],"acf":[],"featured_image":null,"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts\/34306"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"},{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/comments?post=34306"}],"version-history":[{"count":0,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts\/34306\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=34306"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=34306"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=34306"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=34306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}