Outils du développeur
Topic outline
-
Au même titre que l'environnement de dev, vous pouvez très bien coder un projet "from scratch". Cette expression anglaise veux dire "à partir de zéro". Mais vous allez vite vous rendre compte que de nombreuses tâches sont répétitives, et que vous allez coder des choses que beaucoup de gens ont déjà codé, et très souvent mieux que vous. Ce constat, partagé par tous les développeurs professionnels, a permit de faire apparaître des boîtes à outils qui vont résoudre vos problèmes de manière bien plus rapide et efficace que si vous l'aviez codé vous même. Il existe différents types de boite à outils, qui remplissent un rôle plus ou moins important dans votre projet.
-
Forum
-
-
Content Managing System (Système de gestion de contenu). Wordpress est un exemple bien connu. Il vous permettra de créer des sites web très fonctionnels, sans écrire une seule ligne de code. Libre à vous d'améliorer votre site par la suite. Les CMS se déclinent en plusieurs catégories, selon le type de projet que vous aurez à réaliser avec :
- les CMS orientés blog (comme Wordpress, Spip ou Drupal)
- les CMS orientés e-commerce (comme Prestashop ou Magento)
- les CMS orientés e-learning (comme Moodle, que vous utilisez en ce moment même)
- etc...
-
Les librairies sont un concept inhérent au développement logiciel. Ce sont des bouts de code extérieurs au votre (écrit par vous même, ou provenant de l'extérieur), et qui vont remplir une fonction précise. Les librairies répondent en général à un besoin qui peut être cloisonné dans un seul fichier, et qui ne fait qu'une chose, mais qui le fait de manière optimale. On peux aussi parler de package, ou de dépendances quand on parle de librairies, mais le concept reste assez similaire. Voici quelques exemples de librairies Javascript :
- JQuery (manipulation du DOM)
- Moment.js (manipulation des dates et heures)
- Video.js (gestion des vidéos)
- React (composants interactifs)
- etc...
Certaines librairies ont un champ d'action très vaste, d'autres remplissent un rôle très restreint. De nombreux plugins peuvent aussi être proposés par ces librairies. Cela veux dire que vous allez pouvoir installer des mini-librairies autour du noyau principal de votre librairie. Le concept de librairie étant intimement lié au développement logiciel de façon générale, vous trouverez des librairies aussi bien en front-end qu'en back-end. Voici un lien vers une liste de librairies Javascript, pour vous faire une idée https://edutechwiki.unige.ch/fr/Biblioth%C3%A8ques_JavaScript - JQuery (manipulation du DOM)
-
Les frameworks (cadre de travail), apportent une structure et des librairies par défaut à votre application. C'est à dire que vous allez bénéficier d'un environnement vous offrant déjà des bonnes pratiques, une bonne organisation, et des libraires utiles, mais totalement vide. Ce sera à vous de coder votre application à l'intérieur de votre framework, en utilisant les diverses options qu'il propose, à votre guise, selon les besoins de l'application.Les framework sont très utiles car ils vous proposent une base saine, et un mode de travail partagé par différents développeurs qui vont travailler sur un même projet (et qui connaissent déjà le framework, ou un similaire). Par exemple, la mise en place d'un design pattern MVC "from scratch" peut être fastidieuse. En revanche, de nombreux frameworks vous proposent cette organisation, sans que vous ayez à la coder vous même et de faire un truc "maison", que personne ne comprendra avant d'y avoir passé du temps dessus. Les frameworks regroupent donc tout un ensemble de choses utiles à votre application, sauf votre application elle même. Voici une liste de quelques frameworks PHP populaires :
- Symfony
- Laravel
- CodeIgniter
- etc...
Et voici un lien plus complet : https://fr.wikipedia.org/wiki/Liste_de_frameworks_PHP -
-
-
Filezilla
Gitkraken
phpMyAdmin
etc...