home Développement Web, Méthodologie Comment améliorer significativement vos développements

Comment améliorer significativement vos développements

Pour être un développeur efficace, il faut avoir certaines qualités : la curiosité, la flexibilité, la mémoire, l’écoute et j’en passe. Mais ça ne suffit pas.

En effet, il faut en plus avoir les bons outils. Quoi de plus frustrants que du perdre du temps dans ses développements sur des éléments très anodins et répétitifs ?

Il y a des outils matériels comme avoir une bonne machine équipé avec double écran mais aussi les outils logiciels comme un IDE, un logiciel de versioning comme Git, un logiciel de backup (il serait dommage de perdre tout son travail local) et il y a les outils de développement : les Frameworks.

Malgré tout, il arrive toujours à un moment où tout cela ne suffit pas car certains outils que vous avez besoin n’existe pas.

Voici un exemple basé sur mon expérience :

J’ai converti tout mon canevas d’application que j’avais développé « from scratch » pour l’ERP de mon entreprise dans un Framework PHP : CodeIgniter.

J’ai repris l’ergonomie, le design et le concept de l’ERP existant et j’y ai inclus des outils comme une librairie de génération de PDF plus flexible (DomPdf) ou ma librairie d’authentification & de permissions GesAuth.

Comme le canevas est basé sur du CRUD, j’y ai donc intégré une magnifique librairie pour CodeIgniter appelé Grocery CRUD. J’ai surchargé un thème existant de cette librairie pour rajouter des fonctionnalités et combler les lacunes des thèmes existants de Grocery CRUD et j’ai ainsi obtenu une bonne base d’application que j’ai nommé setup-web-application.

Le setup est très efficace pour démarrer des nouveaux projets. On le déploie en 5 minutes et hop on commence à bosser. On attaque notre premier CRUD… et là, on commence à perdre en efficacité.

Vous êtes en train de vous dire : Pourquoi me direz-vous ?

Tout simplement parce que pour créer un CRUD, c’est des tâches anodines et monotones à effectuer.

Je dois créer un fichier controller, model, lang, JavaScript ainsi que la table qui va contenir les données. A cela, on insère les permissions de base (géré par GesAuth) pour accéder au menu… Ouf ! Je peux commencer à développer .

Vous l’aurez compris ? C’est barbant, inintéressant et en plus de ça source d’erreur. En plus pour ne pas repartir de zéro, je vais dupliquer des fichiers existants (parce qu’un développeur est un adepte du copier-coller) pour les adapter et obtenir le nouvel espace de travail.

C’est frustrant je trouve d’avoir en tête toutes les étapes à effectuer pour préparer son espace de travail pour enfin se concentrer sur l’essentiel : sa plus-value.

Et c’est là que les outils inexistants interviennent .

Créez vos propres outils

J’ai décidé de me sortir de la tête toutes ses étapes barbantes à faire : la génération des fichiers, la création de la table en base de données et les permissions.

Comment j’ai fait ? En me posant juste une question, que vous devez systématiquement vous posez : est-ce que je peux automatiser ces tâches répétitives, peu valorisantes et barbantes ?

Et vous savez quoi ? Dans 90% des cas, la réponse sera OUI  .

Pour mon problème, j’ai créé une librairie que j’ai nommé Generate Controller GC (GC pour Grocery CRUD) qui permet de générer tous mes fichiers, ma table en base de données et mes permissions par un simple formulaire. Grâce à ça, j’ai gagné des CRUD standardisé et clair puisque qu’ils sont tous générés de la même façon, un gain du temps et surtout j’ai regagné de l’efficacité dans mon travail car je n’ai plus la manipulation en tête et je me concentre sur ma réelle plus-value.

Alors n’hésitez plus ! Posez-vous la bonne question : est-ce que je peux automatiser la tâche que je suis en train de faire et va t-elle me faire gagner en efficacité ?

Si vous utilisez CodeIgniter et Grocery CRUD, vous pouvez récupérer, contribuer ou la partager sur :

Une documentation est présente dans la zone wiki sur Github.

Et voici un lien de démo de cette librairie: Démo

Gaëtan Cottrez

CHOOSE A JOB YOU LOVE AND YOU WILL NOT HAVE TO WORK A DAY IN YOUR LIFE

Partagez cette article sur :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Apprenez gratuitement les 7 secrets de l'art de bien coder
Vous saurez comment avoir les bons réflexes, une bonne méthodologie de travail, une meilleure lisibilité et sécurité de votre code