{"id":366575,"date":"2023-06-27T15:05:43","date_gmt":"2023-06-27T14:05:43","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=phpstorm&#038;p=366575"},"modified":"2023-06-27T16:32:22","modified_gmt":"2023-06-27T15:32:22","slug":"bonnes-pratiques-pour-laravel-comment-automatiser-votre-routine","status":"publish","type":"phpstorm","link":"https:\/\/blog.jetbrains.com\/fr\/phpstorm\/2023\/06\/bonnes-pratiques-pour-laravel-comment-automatiser-votre-routine\/","title":{"rendered":"Bonnes pratiques pour Laravel\u00a0: comment automatiser votre routine"},"content":{"rendered":"\n<p>En tant que d\u00e9veloppeur Laravel, vous \u00eates un artisan du web. Et vous aimeriez s\u00fbrement augmenter votre productivit\u00e9, non\u00a0? Dans cet article, nous vous proposons de d\u00e9couvrir comment y parvenir en utilisant <a href=\"https:\/\/jb.gg\/laravel-blog-fr\" target=\"_blank\" rel=\"noopener\">l&#8217;IDE PhpStorm avec le plugin Laravel Idea<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Saisie semi-automatique intelligente<\/h2>\n\n\n\n<p>La saisie semi-automatique des actions utilis\u00e9es quotidiennement est une fonctionnalit\u00e9 cruciale pour booster la productivit\u00e9 du d\u00e9veloppement Laravel. La compr\u00e9hension approfondie de votre base de code Laravel offerte par PhpStorm associ\u00e9e au plugin Laravel Idea permet la prise en charge de la saisie semi-automatique pour les commandes les utilis\u00e9es. Examinons chacune d&#8217;elles plus en d\u00e9tail.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Eloquent<\/h3>\n\n\n\n<p>Laravel contribue largement \u00e0 la puissance de l&#8217;ORM Eloquent et PhpStorm est capable de tout comprendre gr\u00e2ce au plugin Laravel Idea. Les avantages vont de la saisie semi-automatique pour des m\u00e9thodes (comme la m\u00e9thode scope), \u00e0 la connaissance par PhpStorm de tous les champs et de toutes les relations de mod\u00e8les disponibles, en passant par la prise en charge compl\u00e8te du constructeur de requ\u00eates et des factories.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/01-eloquent.gif\" alt=\"Prise en charge d'Eloquent pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Prise en charge des routes<\/h3>\n\n\n\n<p>Le bundle fournit la saisie semi-automatique et des informations partout sur les routes. Vous b\u00e9n\u00e9ficiez de la saisie semi-automatique sur les noms et sur les m\u00e9thodes des routes.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/02-routes.gif\" alt=\"Prise en charge des routes pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Livewire<\/h3>\n\n\n\n<p>Livewire, la biblioth\u00e8que qui simplifie consid\u00e9rablement la cr\u00e9ation d&#8217;interfaces dynamiques, est aussi prise en charge. Vous b\u00e9n\u00e9ficiez de la saisie semi-automatique sur m\u00e9thodes et les propri\u00e9t\u00e9s, pouvez passer facilement des vues aux fichiers de composants, cliquer sur les composants, et bien plus.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/03-livewire.gif\" alt=\"Prise en charge de Livewire pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Classes de requ\u00eates<\/h3>\n\n\n\n<p>Coupl\u00e9 au plugin Laravel Idea, PhpStorm prend en charge les classes de requ\u00eates et les r\u00e8gles de validation, ajoutant de la saisie semi-automatiques et des informations partout o\u00f9 vous en avez besoin. Vous pouvez \u00e9galement g\u00e9n\u00e9rer des r\u00e8gles de requ\u00eates par d\u00e9faut bas\u00e9es sur des mod\u00e8les.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/04-requests.gif\" alt=\"Prise en charge des classes de requ\u00eates et des r\u00e8gles de validation pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">G\u00e9n\u00e9ration de code<\/h3>\n\n\n\n<p>Laravel Idea permet de g\u00e9n\u00e9rer quasiment tout ce dont vous avez besoin, des contr\u00f4leurs aux middlewares, en passant par les migrations et les commandes de la console. Vous n&#8217;avez plus besoin de vous souvenir des commandes \u00ab make \u00bb ni de leurs param\u00e8tres. Laravel Idea propose une interface propre pour g\u00e9n\u00e9rer tout ce dont vous avez besoin.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/05-codegen.gif\" alt=\"G\u00e9n\u00e9ration de code pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Mise en \u00e9vidence de la syntaxe dans Blade<\/h2>\n\n\n\n<p>PhpStorm offre d\u00e9j\u00e0 une mise en \u00e9vidence de la syntaxe puissante pour diff\u00e9rents constructs et erreurs de syntaxe. Pour les d\u00e9veloppeurs Laravel, nous avons ajout\u00e9 la prise en charge de Blade via le moteur de mod\u00e8les de Laravel.&nbsp;<\/p>\n\n\n\n<p>Vous pouvez extraire le code vers des composants Blade et b\u00e9n\u00e9ficier de la saisie semi-automatique pour ces composants. Vous pouvez \u00e9galement refactoriser le nom d&#8217;un fichier Blade et mettre automatiquement \u00e0 jour toutes ses r\u00e9f\u00e9rences. Vous avez aussi la possibilit\u00e9 de cr\u00e9er des fichiers Blade dans les contr\u00f4leurs, de disposer de la saisie semi-automatique dans ces fichiers, et bien plus.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/06-blade.gif\" alt=\"Mise en \u00e9vidence de la syntaxe dans Blade pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Ajustement automatis\u00e9 des espaces de noms et des importations<\/h2>\n\n\n\n<p>Outre la saisie semi-automatique et la mise en \u00e9vidence de la syntaxe, PhpStorm propose toute une s\u00e9rie de fonctionnalit\u00e9s puissantes afin d&#8217;ajuster automatiquement les espaces de noms et les importations.<\/p>\n\n\n\n<p>Lorsque vous d\u00e9placez un fichier, PhpStorm ajuste automatiquement son espace de noms et toutes les importations. Lorsque vous r\u00e9f\u00e9rencez une classe, PhpStorm y ajoute l&#8217;importation. PhpStorm effectue de nombreuses t\u00e2ches fastidieuses \u00e0 votre place gr\u00e2ce \u00e0 ses capacit\u00e9s de refactorisation, telles que le renommage des variables ou l&#8217;extraction de code dans des m\u00e9thodes s\u00e9par\u00e9es, et offre des fonctionnalit\u00e9s pour la d\u00e9tection d&#8217;erreurs, la g\u00e9n\u00e9ration de code, l&#8217;assistance au formatage, entre autres.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/07-refactoring.gif\" alt=\"Ajustement automatis\u00e9 des espaces de noms et des importations pour Laravel dans PhpStorm\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Prise en charge des frameworks frontend<\/h2>\n\n\n\n<p>PhpStorm apporte une prise en charge int\u00e9gr\u00e9e pour des frameworks frontend populaires, notamment pour Tailwind, Vue et React.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/08a-tailwind.gif\" alt=\"Prise en charge des frameworks frontend dans PhpStorm\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/08b-javascript.gif\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Int\u00e9gration d&#8217;applications<\/h2>\n\n\n\n<p>Parmi les outils directement int\u00e9gr\u00e9s dans PhpStorm, vous trouverez notamment notre int\u00e9gration GIT (incluant la prise en charge de GitHub), notre client HTTP, un d\u00e9bogueur et des outils de base de donn\u00e9es.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/phpstorm\/laravel-campaign\/09-git.gif\" alt=\"Int\u00e9gration d'applications dans PhpStorm\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Nouveau cours sur Laravel de Jeffrey Way<\/h2>\n\n\n\n<p>Vous souhaitez d\u00e9couvrir les avantages de l&#8217;offre group\u00e9e PhpStorm et Laravel Idea de fa\u00e7on plus d\u00e9taill\u00e9e&nbsp;? Suivez <strong>gratuitement<\/strong> <a href=\"https:\/\/laracasts.com\/series\/phpstorm-for-laravel-developers\" target=\"_blank\" rel=\"noopener\">ce cours en ligne sur Laracasts<\/a> (disponible en anglais uniquement) pour apprendre comment&nbsp;:<\/p>\n\n\n\n<ul>\n<li>Am\u00e9liorer votre d\u00e9veloppement Laravel en codant dans PhpStorm avec le plugin Laravel Idea.<\/li>\n\n\n\n<li>Refactoriser, d\u00e9boguer et tester votre code \u00e0 l&#8217;aide de PestPHP.<\/li>\n\n\n\n<li>\u00c9crire du code de meilleure qualit\u00e9 et gagner en productivit\u00e9 avec Laravel.&nbsp;<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>Ce n&#8217;est pas tout ! Vous pouvez obtenir le plugin Laravel Idea avec une <strong>r\u00e9duction de 50\u00a0%<\/strong>. Cliquez <a href=\"https:\/\/jb.gg\/laravel-blog-fr\" target=\"_blank\" rel=\"noopener\">ici<\/a> pour b\u00e9n\u00e9ficier de cette offre.<\/p>\n\n\n\n<p align=\"center\"><a class=\"jb-download-button\" href=\"https:\/\/jb.gg\/laravel-blog-fr\" target=\"_blank\" rel=\"noopener\"><i class=\"download-icon\"><\/i>Profitez de cette offre \u00e0 -50\u00a0%<\/a><\/p>\n\n\n\n<p><em>Auteurs de l&#8217;article original en anglais<\/em> :<\/p>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":813,"featured_media":367150,"comment_status":"closed","ping_status":"closed","template":"","categories":[2347],"tags":[2213,6717],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/phpstorm\/366575"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/phpstorm"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/phpstorm"}],"author":[{"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=366575"}],"version-history":[{"count":10,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/phpstorm\/366575\/revisions"}],"predecessor-version":[{"id":367235,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/phpstorm\/366575\/revisions\/367235"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media\/367150"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=366575"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=366575"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=366575"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=366575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}