Aller au contenu
gaetancottrez.dev

Framework PHP : Pourquoi vous devriez choisir CodeIgniter

Published:le  à 16:19 | (4 min de lecture)
Framework PHP : Pourquoi vous devriez choisir CodeIgniter

Table des matières

Ouvrir table des matières

Framework PHP : Pourquoi vous devriez choisir CodeIgniter

Il existe à l’heure actuelle beaucoup de Framework pour PHP. Les plus connus étant Symphony 2 (S2), Zend Framework 2 (ZF2), Cake PHP, Lavarel, Yii et CodeIgniter (CI). Certains ont déjà fait leurs preuves, d’autres des effets de mode et il y en a qui sont des usines à gaz.

Je recherchais un Framework léger, simple et rapide à apprendre, modulable, bref un outil qui se contente du minimum requis tout en laissant la possibilité au développeur de le faire évoluer suivant ce qu’on a besoin.

Simple et rapide à apprendre

Il me fallait quelque chose de très simple et très rapide à comprendre. C’est un critère très important dans le monde professionnel surtout lorsque l’on travaille en équipe.

Imaginons que demain un nouvel employé ou même un stagiaire débarque, qu’il ne connaisse pas le Framework en question et qu’il soit long et difficile à maîtriser sans compter qu’il doit aussi maîtriser la philosophie et les méthodologies de l’entreprise. Cela peut mettre un gros frein pour l’entreprise car le choix de nouvelles ressources humaines seront alors limitées (voir très limitées). On voit mal un patron d’une PME recruter un nouvel employé où il lui faudra plusieurs semaines pour qu’il puisse être opérationnel (sans avoir la certitude qu’il le deviendra)

Modulable

Pouvoir adapter le comportement du Framework suivant ce qu’on veut faire sans passer par des bidouilles ou des mécanismes tordus. Et il n’y a rien de pire que le bricolage en développement croyez-moi. Certains pourront dire que le fait qu’un Framework soit modulable rend le développement pas très propre et souvent bâclé… c’est vrai dans un sens. Seulement je pars du principe qu’un développeur n’est pas un utilisateur, il doit savoir ce qu’il fait et que s’il module son outil dans les règles de l’art et qu’il est compris par tous, alors où est le problème.

Par exemple, CodeIgniter qui adopte nativement une architecture MVC peut -être modulé en une architecture HMVC très proprement.

Ne pas démarrer avec une usine à gaz

Pour moi, c’est LE critère le plus important. Pourquoi déployer un monstre, une usine à gaz si on n’utilise que 5 ou 10 % des fonctionnalités ? Surtout sur des projets de petites envergure. La remise en question du développement from scratch dans des petits projets peut être de mise, mais un Framework très simple qui se contente du minimum permet d’aborder des projets de petites, moyennes et grandes envergures tout en greffant des mécanismes au moment venue. Cela permet d’avoir toujours une seule et même méthodologie de travail ainsi qu’un projet évolutif basé sur un moteur robuste.

Une communauté

La communauté dans un outil Open Source est primordiale. Celle de CodeIgniter n’échappe pas à la règle, elle est déjà très grande.

Il est géré par une grande université

Jusqu’au la version 2, c’est la société Ellislab qui gérait et qui a créé CodeIgniter. Puis l’université British Columbia Institute of Technology a repris le flambeau sous la bénédiction d’Ellislab. Autant vous dire que question évolution et pérennité, CodeIgniter a un avenir assuré.

Conclusion

J’ai donc choisi CodeIgniter pour tous ses critères. Il est inutile de créer un article dédié à son utilisation, son histoire et ce qu’il est possible de faire. La toile contient déjà des tas d’articles à son sujet qu’un de plus serait inutile à mon goût (sauf qu’on me le demandait).

Un conseil !

Il est inutile de re-développer la roue comme on dit. Je vous conseille de rechercher des librairies, helper faisant déjà une bonne partie de ce que vous voulez sur des plateformes open source telle que Github ou encore BitBucket par exemple.

Partager cet article :

Vous pourriez aussi aimer ❤️

NestJS : un framework Backend JavaScript pour réaliser des API

NestJS : un framework Backend JavaScript pour réaliser des API

Une feuille de route pour devenir développeur web

Une feuille de route pour devenir développeur web