Framework LARAVEL
Introduction à Laravel - un peu de vocabulaire
« développeur full-stack »
- Le terme « full » = maîtriser à la fois le développement front et back-end.
- Front end = toutes les parties des applications et sites web visibles par l'utilisateur
- Back end = code qui alimente ces applications et sites.
- Full = tout faire, de l'ajustement des visuels de site web à la construction de bases de données complexes et à l'assurance que le front et le back end fonctionnent harmonieusement ensemble.
Langages de programmation
Côté front-end
- HTML/CSS, javascript
- langages plus spécialisés pour certains types de projets(swift pour Apple)
Côté back-end
- Java, Python, et des langages C tels que C, C++, et C#.
- création, gestion, sécurisation et connexion des bases de données.
- écriture et l'utilisation d'API pour connecter des services et des bases de données disparates.
Autres compétences développeurs full-stack
- Bases de la sécurité web : authentification, autorisation, suivi et surveillance du système, protection contre les attaques par injection de code,..
- Du côté back-end : sécurité des données tels que chiffrement, contrôle d'accès basé sur les rôles, et les protocoles de sécurité de la couche de transport (TLS).
- Interface Utilisateur (UI) et Expérience Utilisateur (UX)
Les outils du développeur
- visualStudioCode
- VisualStudio
- NetBeans
IDE/Framework
IDE - environnement de développement intégré = logiciel qui aide au développement de logiciels
- ensemble d’outils et de facilités dont les programmeurs ont besoin pour le développement et la conception de logiciels
- fournit au programmeur un environnement dans lequel il peut écrire et tester ses codes
Framework - “cadre de travail” = ensemble de conventions, de bibliothèques et d'outils qui permettent de structurer et de développer des applications logicielles. Il fournit une base pour le développement, offrant des solutions préconçues aux problèmes courants rencontrés lors de la création de logiciels.
Un IDE est une application utilisée pour écrire et compiler du code.
Un Framework est généralement un composant logiciel que quelqu’un d’autre a écrit et qu'on peut utiliser/intégrer dans notre propre projet, généralement pour éviter de “réinventer la roue”.
Des frameworks
- Front-end : Bootstrap, Semantic UI, Skeleton, NodeJS, …
- Back-end : Laravel, CodeIgniter, Symfony, AngularJS, Ruby on Rails, ASP.NET, Django, …
Note: Un framework n'est pas fait pour remplacer la connaissance d'un langage, mais pour assister celui (ou celle) qui connaît déjà bien ce langage.
Laravel : un framework PHP
Un framework PHP fournit la structure et les composants de base pour créer des applications web. En outre, il réutilise le code pour éviter les tâches répétitives.
Avantages
1) Gagner du temps
- des fonctions intégrées qui permettent de sélectionner du code au lieu de l’écrire
- des bibliothèques PHP proposent des composants communs aux applications web(validation des formulaires, opérations CRUD,…) : pas besoin de les créer à partir de zéro.
- architecture MVC : Le modèle contient la logique de programmation et les données de l’application, la vue présente les données à l’utilisateur et le contrôleur interagit avec l’utilisateur et transmet les commandes aux autres composants.
- des générateurs de code
2) Bonnes pratiques de codage
= Ecrire du code de manière claire et organisée.
- code divisé en répertoires basés sur leurs fonctions : travail et maintenance du script facilités.
- conventions de codage
3) Une meilleure collaboration
Normes et règles de codage, documentation
4) Une meilleure sécurité
Assainissement des données et bonnes pratiques de codage pour minimiser les risques.
Composants
Laravel est un framework PHP populaire et étendu, connu pour sa syntaxe élégante. Il possède de nombreuses fonctionnalités et fonctions intégrées qui en font un outil solide pour personnaliser des applications complexes. Ses fonctions comprennent l’authentification des utilisateurs, la gestion des sessions et la mise en cache.
Il existe des paquets permettant d’étendre le framework. Les packages spécifiques à Laravel fonctionnent uniquement avec Laravel, tandis que les packages indépendants du framework fonctionnent avec tous les frameworks PHP.
Laravel Homestead
Laravel homestead est une fonctionnalité intéressante. Il s’agit d’une boîte Vagrant pré-packagée qui fournit un environnement de développement web local avec une machine virtuelle. Les développeurs web peuvent l’utiliser pour créer des applications web PHP sans serveur web ni installation de PHP sur un ordinateur local.
Composer
Présentation du framework Laravel, de l’écosystème PHP moderne (Composer, Artisan, ORM Eloquent). Comparaison rapide avec Jakarta EE.
Artisan
ORM Eloquent
Laravel / Jakarta EE
A Savoir: Faites-vous un mémento du vocabulaire et des commandes propre à Laravel pour vous familiariser avec cet enviroinnement de développement