Le micro-framework Lumen et les APIs REST

Publié le 07/10/2019

~ Pensé et rédigé par Yoan Habib ~


Bannière

Source : unsplash.com

Lumen est un Micro-Framework web libre et open source écrit dans le langage PHP. Conçu principalement pour développer des Microservices, Lumen est une version très légère du Framework Full-stack Laravel et se base sur de nombreux composants et fonctionnalités de ce dernier. Il est un très bon outil dont je me suis servi afin de concevoir des APIs de type RESTful, des interfaces de programmation d’application faisant appel à des requêtes HTTP pour obtenir, publier, modifier ou supprimer des données.

Contexte d’utilisation

J’ai eu l’occasion de me servir de Lumen à de nombreuses reprises lors de mon alternance au sein de la société JeChange. Par exemple, j’ai développé une API d’auto-complétion d’adresses postales. Cela a permis de connecter toutes les applications de l’entreprise à ce service, afin que les différents utilisateurs (clients et/ou salariés) gagnent du temps et n’aient plus à saisir une adresse sur des champs séparés (rue, code postal, ville, etc.).

Également, j’ai récemment travaillé sur le développement de plusieurs APIs destinées à être utilisées par une application mobile. En effet, l’objectif était que celles-ci répondent aux différents besoins spécifiés en amont, que ce soit la création d’un compte utilisateur de l’application, la gestion de l’authentification ou encore la possibilité de mettre à jour un profil.

Autocritique

Comme la plupart des technologies que j’ai abordées depuis le début de ma carrière de développeur, je me suis formé à Lumen au fur et à mesure de son utilisation et cela, très rapidement.

Il s’agit de l’un des outils que je maîtrise le mieux aujourd’hui, à tel point que l’on m’a fait confiance lors de mon alternance pour m’occuper du passage à la version deux des différentes APIs (consistant en l’harmonisation des réponses envoyées par les différents services).

Peu gourmand en ressources et facile d’utilisation, Lumen est très agréable à prendre en main et fournit aux développeurs uniquement ce dont ils ont besoin pour la mise en place de Microservices compatibles avec toutes sortes d’applications. Néanmoins, comme je l’ai spécifié au début, il s’agit d’une version simplifiée du Framework Laravel, ce qui implique que l’on peut se retrouver limité dans certains cas mais cela arrive très rarement.

Pour ceux qui souhaiteraient s’en servir, une bonne connaissance du langage PHP et de la programmation orientée objet suffit amplement. Cependant, il faut faire attention à respecter les bonnes pratiques imposées par le Micro-Framework mais aussi par d’autres standards, tel que REST (si l’on souhaite développer des APIs de ce type) afin de garder un code propre, lisible et facile de compréhension.

Conclusion

Lumen est sans doute l’une des technologies qui va me permettre de booster réellement ma carrière de développeur web. D’une part, elle utilise le PHP, langage présent dans plus de 80% des sites web aujourd’hui et d’autre part, les SPA (Application web monopage) se modernisant de plus en plus, les besoins liés au développement de Microservices seront de plus en plus présent. Pour terminer, je tiens à dire que Lumen sera sans doute le premier outil auquel je penserai pour le développement Back-end de mes futurs projets personnels.

Yoan Habib
Yoan Habib

Salut, moi c'est Yoan ! Mes passions ? La culture japonaise et le monde du web en général.