{"id":1695,"date":"2023-01-18T11:56:27","date_gmt":"2023-01-18T10:56:27","guid":{"rendered":"https:\/\/www.laravel-entwickler.de\/quest-ce-que-le-lumen-framework\/"},"modified":"2023-01-18T12:00:10","modified_gmt":"2023-01-18T11:00:10","slug":"quest-ce-que-le-lumen-framework","status":"publish","type":"post","link":"https:\/\/www.laravel-entwickler.de\/fr\/quest-ce-que-le-lumen-framework\/","title":{"rendered":"Qu&rsquo;est-ce que le Lumen Framework ?"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Qu&rsquo;est-ce que le Lumen Framework ?  <\/h2>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP-micro-framework.jpg\" rel=\"wp-prettyPhoto[1695]\"><img loading=\"lazy\" decoding=\"async\" width=\"575\" height=\"250\" src=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP-micro-framework.jpg\" alt=\"\" class=\"wp-image-1661\" srcset=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP-micro-framework.jpg 575w, https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP-micro-framework-300x130.jpg 300w\" sizes=\"auto, (max-width: 575px) 100vw, 575px\" \/><\/a><\/figure><\/div>\n<p>Pour cr\u00e9er une application web, il n&rsquo;est g\u00e9n\u00e9ralement pas utile de la d\u00e9velopper soi-m\u00eame de A \u00e0 Z. Il est pr\u00e9f\u00e9rable d&rsquo;avoir recours \u00e0 un logiciel de d\u00e9veloppement. D&rsquo;une part, cela n\u00e9cessiterait des connaissances tr\u00e8s approfondies. D&rsquo;autre part, cela prendrait beaucoup de temps et ne serait donc pas rentable. C&rsquo;est pourquoi des frameworks sont souvent utilis\u00e9s \u00e0 cet effet.  <\/p>\n\n<p>Ceux-ci contiennent d\u00e9j\u00e0 toutes les fonctions essentielles pour la t\u00e2che en question. Il suffit ensuite de les assembler et de les adapter aux exigences individuelles.<\/p>\n\n<p>Il existe toutefois un tr\u00e8s grand choix dans le domaine des frameworks web. Il est donc important de choisir un paquet adapt\u00e9. Lumen est une possibilit\u00e9 \u00e0 cet \u00e9gard. Il s&rsquo;agit d&rsquo;une solution relativement r\u00e9cente &#8211; elle n&rsquo;a \u00e9t\u00e9 publi\u00e9e qu&rsquo;en 2015.<\/p>\n\n<p>Une autre particularit\u00e9 r\u00e9side dans le fait que le responsable de la conception est le m\u00eame d\u00e9veloppeur que pour le framework web Laravel. Cela laisse d\u00e9j\u00e0 supposer qu&rsquo;il existe quelques points communs. Cet article pr\u00e9sente ce qu&rsquo;est Lumen, ses sp\u00e9cificit\u00e9s et ses diff\u00e9rences avec Laravel.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>D\u00e9ployer des applications web par microservice<\/strong><\/h3>\n\n<p>Nous avons d\u00e9j\u00e0 esquiss\u00e9 les grandes lignes des caract\u00e9ristiques de Lumen dans l&rsquo;introduction : Il s&rsquo;agit d&rsquo;un framework pour le d\u00e9veloppement d&rsquo;applications web, con\u00e7u par la m\u00eame personne que le framework Laravel, nettement plus connu. Mais \u00e0 cela s&rsquo;ajoutent quelques autres caract\u00e9ristiques importantes. Il est par exemple tr\u00e8s important qu&rsquo;il s&rsquo;agisse d&rsquo;un framework bas\u00e9 sur des microservices. Cette technique n&rsquo;est pas encore tr\u00e8s r\u00e9pandue dans ce domaine. C&rsquo;est pourquoi il est tr\u00e8s important de s&rsquo;int\u00e9resser de plus pr\u00e8s \u00e0 ce que sont r\u00e9ellement les microservices et quels sont leurs avantages et inconv\u00e9nients.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>Qu&rsquo;est-ce qu&rsquo;un microservice ?<\/strong><\/h3>\n\n<p>Pendant de nombreuses d\u00e9cennies, les programmes informatiques ont presque toujours \u00e9t\u00e9 des programmes monolithiques. Cela signifie qu&rsquo;ils sont constitu\u00e9s d&rsquo;une unit\u00e9 ferm\u00e9e qui ne peut fonctionner que dans son ensemble. Cependant, depuis quelques ann\u00e9es, les microservices sont de plus en plus populaires. Cela signifie qu&rsquo;un programme est compos\u00e9 de nombreux \u00e9l\u00e9ments distincts qui sont ind\u00e9pendants les uns des autres et qui peuvent fonctionner seuls. Un programme peut alors acc\u00e9der \u00e0 diff\u00e9rents services de ce type. Ceux-ci effectuent leur t\u00e2che de mani\u00e8re totalement ind\u00e9pendante et se contentent de transmettre le r\u00e9sultat. Le lien n&rsquo;est que vague. Il est par exemple possible que diff\u00e9rentes applications acc\u00e8dent aux m\u00eames microservices.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>Communication via API<\/strong><\/h3>\n\n<p>Lors de l&rsquo;utilisation de microservices, il est tr\u00e8s important de veiller \u00e0 une forme de communication appropri\u00e9e. Pour cela, on utilise ce que l&rsquo;on appelle des API. Cette abr\u00e9viation signifie Application Programming Interface &#8211; en fran\u00e7ais Interface de programmation. Chaque microservice doit fournir une API correspondante. L&rsquo;application proprement dite peut alors y acc\u00e9der et faire une demande correspondante. Si n\u00e9cessaire, une authentification de cette demande a lieu. Si celle-ci est r\u00e9ussie, le microservice effectue sa t\u00e2che et renvoie le r\u00e9sultat \u00e0 l&rsquo;application. Celle-ci peut alors l&rsquo;utiliser. Pour que le syst\u00e8me fonctionne, il est important de choisir des formats de donn\u00e9es adapt\u00e9s. En outre, une documentation d\u00e9taill\u00e9e est n\u00e9cessaire pour que les d\u00e9veloppeurs qui acc\u00e8dent au microservice sachent exactement quelles informations ils re\u00e7oivent de celui-ci.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>Quels sont les avantages de l&rsquo;utilisation de microservices ?<\/strong><\/h3>\n\n<p>Lorsqu&rsquo;il s&rsquo;agit de d\u00e9cider si vous allez utiliser Lumen pour votre application web, le fait que vous souhaitiez utiliser un programme monolithique ou des microservices joue un r\u00f4le important. C&rsquo;est pourquoi il est tr\u00e8s important de s&rsquo;int\u00e9resser de pr\u00e8s aux avantages de l&rsquo;utilisation des microservices et aux cas dans lesquels cette technique est judicieuse.<\/p>\n\n<p>L&rsquo;un des grands avantages de ces syst\u00e8mes est leur grande flexibilit\u00e9. En cas de besoin, il est tr\u00e8s facile d&rsquo;ajouter de nouvelles fonctions gr\u00e2ce \u00e0 un microservice adapt\u00e9, sans qu&rsquo;il soit n\u00e9cessaire d&rsquo;adapter les autres services. C&rsquo;est pourquoi les extensions sont beaucoup plus faciles \u00e0 mettre en \u0153uvre que dans le cas de programmes monolithiques. L&rsquo;\u00e9volutivit\u00e9 des syst\u00e8mes est \u00e9galement \u00e9lev\u00e9e, car l&rsquo;ajout de services suppl\u00e9mentaires ne pose aucun probl\u00e8me. Pendant la phase de d\u00e9veloppement, il est en outre avantageux que les fonctions de base puissent \u00eatre utilis\u00e9es apr\u00e8s peu de temps. Vous pouvez ensuite ajouter les fonctions un peu moins importantes pendant que vous utilisez d\u00e9j\u00e0 le programme. Les mesures de maintenance sont \u00e9galement faciles \u00e0 mettre en \u0153uvre, car il est possible de le faire s\u00e9par\u00e9ment pour chaque service.<\/p>\n\n<p>Les microservices se caract\u00e9risent \u00e9galement par la possibilit\u00e9 de faire d\u00e9velopper l&rsquo;ensemble de l&rsquo;application par de nombreuses \u00e9quipes ind\u00e9pendantes. Il suffit pour cela de sp\u00e9cifier les t\u00e2ches que chaque service doit accomplir. Ensuite, une \u00e9quipe peut le d\u00e9velopper de mani\u00e8re totalement ind\u00e9pendante. Il est m\u00eame possible d&rsquo;utiliser diff\u00e9rents langages de programmation pour les diff\u00e9rents services. Cela n&rsquo;entra\u00eene pas seulement une grande flexibilit\u00e9 dans la conception. En outre, pour chaque service, il est possible de choisir une technique parfaitement adapt\u00e9e \u00e0 la t\u00e2che \u00e0 accomplir. En outre, vous pouvez toujours utiliser une technologie actuelle pour les extensions &#8211; m\u00eame si les autres services utilisent encore des technologies plus anciennes. Une modernisation progressive est ainsi possible.<\/p>\n\n<p>Enfin, vous b\u00e9n\u00e9ficiez g\u00e9n\u00e9ralement d&rsquo;une vitesse d&rsquo;ex\u00e9cution \u00e9lev\u00e9e. L&rsquo;utilisation de petits services ind\u00e9pendants a pour cons\u00e9quence que la charge de calcul n\u00e9cessaire \u00e0 l&rsquo;ex\u00e9cution des t\u00e2ches correspondantes est normalement nettement moins importante que lors de l&rsquo;utilisation d&rsquo;une grande application monolithique. C&rsquo;est pourquoi l&rsquo;utilisation de microservices est \u00e9galement recommand\u00e9e si vous accordez de l&rsquo;importance \u00e0 une ex\u00e9cution efficace.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP.jpg\" rel=\"wp-prettyPhoto[1695]\"><img loading=\"lazy\" decoding=\"async\" width=\"575\" height=\"250\" src=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP.jpg\" alt=\"\" class=\"wp-image-1673\" srcset=\"https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP.jpg 575w, https:\/\/www.laravel-entwickler.de\/wp-content\/uploads\/2023\/01\/PHP-300x130.jpg 300w\" sizes=\"auto, (max-width: 575px) 100vw, 575px\" \/><\/a><\/figure><\/div>\n<h3 class=\"wp-block-heading\"><strong>Lumen et Laravel<\/strong><\/h3>\n\n<p>Nous avons d\u00e9j\u00e0 dit que Lumen pr\u00e9sente un grand point commun avec le c\u00e9l\u00e8bre framework web Laravel : Les deux techniques ont \u00e9t\u00e9 d\u00e9velopp\u00e9es par la m\u00eame personne &#8211; Taylor Otwell. On peut donc supposer qu&rsquo;il y a des points communs. C&rsquo;est effectivement le cas et, pour de nombreux projets, il est m\u00eame judicieux d&rsquo;utiliser les deux techniques ensemble.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>Compatibilit\u00e9 avec Laravel<\/strong><\/h3>\n\n<p>Il a d\u00e9j\u00e0 \u00e9t\u00e9 dit que les microservices fournissent de petits services ind\u00e9pendants. C&rsquo;est pr\u00e9cis\u00e9ment \u00e0 cette t\u00e2che que Lumen est destin\u00e9. Ces services sont des applications dorsales. En revanche, Lumen ne permet pas de cr\u00e9er des applications frontales qui acc\u00e8dent \u00e0 ces services. Pour cela, vous pouvez utiliser diff\u00e9rents autres langages et frameworks. Une solution tr\u00e8s populaire consiste \u00e0 utiliser Laravel \u00e0 cet effet. Ces deux frameworks sont parfaitement adapt\u00e9s l&rsquo;un \u00e0 l&rsquo;autre, ce qui permet de cr\u00e9er facilement des applications tr\u00e8s efficaces.<\/p>\n\n<p>En outre, il existe de grandes similitudes syntaxiques. Une \u00e9quipe de d\u00e9veloppeurs ma\u00eetrisant Laravel peut \u00e9galement cr\u00e9er des microservices avec Lumen moyennant une formation relativement courte. En outre, il est possible de faire passer les applications Lumen sur Laravel si n\u00e9cessaire.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>D\u00e9veloppement simple et efficace<\/strong><\/h3>\n\n<p>Un autre avantage offert par ce framework est la tr\u00e8s grande facilit\u00e9 de d\u00e9veloppement. La courbe d&rsquo;apprentissage est ici tr\u00e8s raide. Les d\u00e9veloppeurs de diff\u00e9rentes disciplines peuvent ainsi s&rsquo;y familiariser rapidement. De m\u00eame, le temps de d\u00e9veloppement est g\u00e9n\u00e9ralement tr\u00e8s court. De nombreuses fonctions sont disponibles \u00e0 cet effet, il n&rsquo;est donc pas n\u00e9cessaire de les d\u00e9velopper soi-m\u00eame. Cela r\u00e9duit consid\u00e9rablement le temps n\u00e9cessaire \u00e0 la cr\u00e9ation des applications.<\/p>\n\n<h3 class=\"wp-block-heading\"><strong>Conclusion : l&rsquo;utilisation de lumens assure une vitesse d&rsquo;ex\u00e9cution \u00e9lev\u00e9e<\/strong><\/h3>\n\n<p>Le framework Lumen repr\u00e9sente une alternative int\u00e9ressante aux possibilit\u00e9s actuelles pour le d\u00e9veloppement web. L&rsquo;utilisation de microservices, qui n&rsquo;est pas possible avec la plupart des autres techniques, est particuli\u00e8rement int\u00e9ressante \u00e0 cet \u00e9gard. Il en r\u00e9sulte une excellente flexibilit\u00e9 de d\u00e9veloppement et d&rsquo;excellentes possibilit\u00e9s de maintenance et d&rsquo;extension. \u00c0 cela s&rsquo;ajoute une vitesse d&rsquo;ex\u00e9cution tr\u00e8s \u00e9lev\u00e9e. Si vous accordez de l&rsquo;importance \u00e0 ces aspects, ce framework repr\u00e9sente donc un excellent choix pour vos projets.<\/p>\n\n<p>Articles int\u00e9ressants :<\/p>\n\n<p><a href=\"https:\/\/lumen.laravel.com\/\">Site officiel de Lumen<\/a><\/p>\n\n<p><a href=\"https:\/\/github.com\/laravel\/lumen-framework\">Les informations sur le framework sur Github<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Qu&rsquo;est-ce que le Lumen Framework ? Pour cr\u00e9er une application web, il n&rsquo;est g\u00e9n\u00e9ralement pas utile de la d\u00e9velopper soi-m\u00eame de A \u00e0 Z. Il est pr\u00e9f\u00e9rable d&rsquo;avoir recours \u00e0 un logiciel de d\u00e9veloppement. D&rsquo;une part, cela n\u00e9cessiterait des connaissances tr\u00e8s approfondies. D&rsquo;autre part, cela prendrait beaucoup<\/p>\n","protected":false},"author":1,"featured_media":1666,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[103],"tags":[],"class_list":["post-1695","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel-fr"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/posts\/1695","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/comments?post=1695"}],"version-history":[{"count":1,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/posts\/1695\/revisions"}],"predecessor-version":[{"id":1696,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/posts\/1695\/revisions\/1696"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/media\/1666"}],"wp:attachment":[{"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/media?parent=1695"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/categories?post=1695"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.laravel-entwickler.de\/fr\/wp-json\/wp\/v2\/tags?post=1695"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}