{"id":231509,"date":"2022-12-25T12:41:00","date_gmt":"2022-12-25T09:41:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231509"},"modified":"2022-12-25T12:41:42","modified_gmt":"2022-12-25T09:41:42","slug":"meilleur-code-wordpress-le-fichier-de-verrouillage-du-compositeur","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fr\/meilleur-code-wordpress-le-fichier-de-verrouillage-du-compositeur\/","title":{"rendered":"Meilleur code WordPress\u00a0: le fichier de verrouillage du compositeur"},"content":{"rendered":"\n<p>Avant de conclure notre discussion sur Composer, il nous reste une chose importante \u00e0 discuter\u00a0: le r\u00e9pertoire des <strong>fournisseurs<\/strong> (et par extension, le fichier de verrouillage de Composer).<\/p>\n<p>Plus pr\u00e9cis\u00e9ment, nous devons expliquer pourquoi nous n&rsquo;avons pas besoin de valider le r\u00e9pertoire des <strong>fournisseurs<\/strong> dans le r\u00e9f\u00e9rentiel, mais comment nos contributeurs peuvent \u00eatre s\u00fbrs qu&rsquo;ils disposent de la derni\u00e8re version du logiciel n\u00e9cessaire pour travailler avec notre base de code.<\/p>\n<p>Utiliser des outils de qualit\u00e9 de code pour <a href=\"https:\/\/tommcfarlin.com\/tag\/better-wordpress-code\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u00e9crire un meilleur code WordPress<\/a> est important, oui, mais comprendre comment g\u00e9rer correctement les d\u00e9pendances et notre r\u00e9f\u00e9rentiel est \u00e9galement important. Donc, avant de regarder lesdits utilitaires, passons en revue le fichier de verrouillage, le r\u00f4le qu&rsquo;il joue et pourquoi nous n&rsquo;avons pas besoin de valider le r\u00e9pertoire du <strong>fournisseur<\/strong> dans notre r\u00e9f\u00e9rentiel.<\/p>\n<h2>Meilleur code WordPress avec le fichier de verrouillage Composer<\/h2>\n<p>Pour ceux qui travaillent avec WordPress &#8211; et peut-\u00eatre dans d&rsquo;autres frameworks et fondations bas\u00e9s sur PHP (je ne sais pas vraiment car j&rsquo;ai tendance \u00e0 ne pas travailler avec eux) &#8211; il y a une d\u00e9pendance \u00e0 Composer, ce qui est une bonne chose.<\/p>\n<p>Cela peut \u00e9galement conduire \u00e0 vouloir valider l&rsquo;int\u00e9gralit\u00e9 du contr\u00f4le de source du r\u00e9pertoire du fournisseur, ce qui n&rsquo;est pas une bonne chose.<\/p>\n<p>Comme mentionn\u00e9 <a href=\"https:\/\/wordpress.mediadoma.com\/fr\/outils-pour-ecrire-un-meilleur-code-wordpress-composer\/\" title=\"dans le post pr\u00e9c\u00e9dent\">dans le post pr\u00e9c\u00e9dent<\/a> :<\/p>\n<blockquote>\n<p>Et je ne recommande pas de v\u00e9rifier le r\u00e9pertoire du fournisseur dans votre r\u00e9f\u00e9rentiel. Cela peut devenir un \u00e9norme r\u00e9pertoire plus tard, et cela peut saper tout l&rsquo;objectif de Composer.<\/p>\n<\/blockquote>\n<p>Alors, comment pouvons-nous nous assurer que nous ne commitons pas inutilement des fichiers (et donc gonflons la taille de notre r\u00e9f\u00e9rentiel) dans le r\u00e9f\u00e9rentiel tout en nous assurant que nos contributeurs utilisent la m\u00eame version du logiciel que nous\u00a0?<\/p>\n<h3>Le d\u00e9sir d&rsquo;engager le r\u00e9pertoire des fournisseurs<\/h3>\n<p>Pour ceux d&rsquo;entre vous qui ont ex\u00e9cut\u00e9 Composer et qui connaissent au moins le r\u00e9pertoire du <strong>fournisseur<\/strong>, vous \u00eates probablement habitu\u00e9 \u00e0 voir plusieurs r\u00e9pertoires de d\u00e9pendances install\u00e9s.<\/p>\n<p>Et ils sont utiles; sinon, vous ne les auriez pas inclus, n&rsquo;est-ce pas\u00a0?<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e705582e682.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e705582e682.png\" alt=\"Meilleur code WordPress\u00a0: le fichier de verrouillage du compositeur\"><\/a><\/p>\n<p>Mais voici le probl\u00e8me avec le r\u00e9pertoire du <strong>fournisseur\u00a0<\/strong>: m\u00eame si vous n&rsquo;avez install\u00e9 que quelques d\u00e9pendances avec votre projet, la taille du fichier lui-m\u00eame peut \u00eatre importante. Et cela peut \u00eatre encore plus important lorsque vous avez beaucoup de d\u00e9pendances.<\/p>\n<p>Quoi qu&rsquo;il en soit, s&rsquo;engager dans le contr\u00f4le des sources semble avoir du sens, n&rsquo;est-ce pas\u00a0? Nous voulons nous assurer que tout le monde a la m\u00eame version du logiciel que nous utilisons et nous voulons nous assurer qu&rsquo;ils n&rsquo;ont pas \u00e0 traiter avec Composer.<\/p>\n<p>Il y a une autre fa\u00e7on, cependant. Et cela maintient notre r\u00e9f\u00e9rentiel petit tout en s&rsquo;assurant que les versions de nos d\u00e9pendances sont synchronis\u00e9es avec ceux qui clonent le r\u00e9f\u00e9rentiel, s&rsquo;engagent dans le r\u00e9f\u00e9rentiel ou pour tout utilitaire d&rsquo;int\u00e9gration continue qui utilise le r\u00e9f\u00e9rentiel.<\/p>\n<h3>Comprendre le fichier de verrouillage<\/h3>\n<p>Avant de parler du r\u00e9pertoire des fournisseurs, je souhaite aborder un autre aspect important de Composer\u00a0: le fichier de verrouillage. Autrement dit, si vous ex\u00e9cutez la commande d&rsquo; <strong>installation<\/strong> ou de <strong>mise<\/strong> \u00e0 jour dans votre terminal, vous verrez un fichier de verrouillage g\u00e9n\u00e9r\u00e9 avec le r\u00e9pertoire du <strong>fournisseur<\/strong>.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e7055c190d2.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e7055c190d2.png\" alt=\"Meilleur code WordPress\u00a0: le fichier de verrouillage du compositeur\"><\/a><\/p>\n<p>C&rsquo;est quoi ce fichier ?<\/p>\n<p>Le post pr\u00e9c\u00e9dent montrait un exemple de fichier de configuration. L&rsquo;une des choses que ce fichier nous permet \u00e9galement de faire est de d\u00e9finir des biblioth\u00e8ques tierces, ou des d\u00e9pendances, que nous pouvons utiliser dans nos projets.<\/p>\n<p>J&rsquo;en ai parl\u00e9 <a href=\"https:\/\/tommcfarlin.com\/tag\/libraries-for-wordpress-plugins\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">dans d&rsquo;autres articles<\/a> (et nous pourrons y revenir un peu plus tard dans cette s\u00e9rie). Mais c&rsquo;est l\u00e0 que le fichier de verrouillage entre en jeu.<\/p>\n<p>En bref, le fichier de verrouillage contient toujours des informations sur la version &#8211; la version <strong>exacte<\/strong> &#8211; des d\u00e9pendances utilis\u00e9es avec le projet lors de la derni\u00e8re ex\u00e9cution de l&rsquo; <strong>installation<\/strong> ou de la mise \u00e0 <strong>jour<\/strong>.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e7056059bac.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-160092-61e7056059bac.png\" alt=\"Meilleur code WordPress\u00a0: le fichier de verrouillage du compositeur\"><\/a><\/p>\n<p><a href=\"https:\/\/getcomposer.org\/doc\/01-basic-usage.md#installing-without-composer-lock\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Du manuel<\/a> :<\/p>\n<blockquote>\n<p>Lorsque Composer a termin\u00e9 l&rsquo;installation, il \u00e9crit tous les packages et les versions exactes de ceux-ci qu&rsquo;il a t\u00e9l\u00e9charg\u00e9s dans le fichier composer.lock, verrouillant le projet sur ces versions sp\u00e9cifiques.<\/p>\n<p>Vous devez valider le fichier composer.lock dans votre r\u00e9f\u00e9rentiel de projet afin que toutes les personnes travaillant sur le projet soient verrouill\u00e9es sur les m\u00eames versions de d\u00e9pendances (voir ci-dessous).<\/p>\n<\/blockquote>\n<p>L&rsquo;objectif est de s&rsquo;assurer que tout le monde ex\u00e9cute la m\u00eame version des d\u00e9pendances du projet &#8211; pas des versions plus anciennes, pas des versions plus r\u00e9centes &#8211; mais la m\u00eame version.<\/p>\n<p>Ainsi, lorsque vous ex\u00e9cutez <strong>composer install<\/strong> lorsqu&rsquo;un fichier de verrouillage est inclus dans le r\u00e9f\u00e9rentiel, il utilise la version du logiciel telle que d\u00e9finie dans le fichier de verrouillage.<\/p>\n<p>Et cela garantit que tout le monde ex\u00e9cute la m\u00eame version de chaque d\u00e9pendance et peut ainsi \u00e9viter d&rsquo;avoir \u00e0 valider le r\u00e9pertoire du fournisseur dans le contr\u00f4le de code source.<\/p>\n<h2>\u00c9crire du code de meilleure qualit\u00e9<\/h2>\n<p>Alors, o\u00f9 allons-nous partir d&rsquo;ici?<\/p>\n<p>Maintenant que nous comprenons comment utiliser Composer et comment utiliser le fichier de verrouillage, nous pouvons commencer \u00e0 parler des d\u00e9pendances r\u00e9elles qui aident \u00e0 am\u00e9liorer la qualit\u00e9 de notre code.<\/p>\n<p>Et lorsque nous parlons d&rsquo;\u00e9crire du code de meilleure qualit\u00e9, il existe des utilitaires con\u00e7us exactement pour cela. Ainsi, dans les prochains articles, nous allons en examiner quelques-uns.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Comprendre comment le fichier de verrouillage Composer nous \u00e9vite d&rsquo;avoir \u00e0 valider le r\u00e9pertoire du fournisseur dans notre r\u00e9f\u00e9rentiel.<\/p>\n","protected":false},"author":1,"featured_media":236343,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[893,717,832,841,862],"tags":[1167],"class_list":["post-231509","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-code-2","category-developpeur","category-guide-pour-les-debutants","category-tutoriels","category-wordpress-3","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231509","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/comments?post=231509"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231509\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media\/236343"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media?parent=231509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/categories?post=231509"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/tags?post=231509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}