Ch2 Commandes Et Dev Rapide - 4p1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Rappel Rappel

Les commandes Symfony Les commandes Symfony


Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Rappel I
Framwork Web Avancé
Un projet Symfony
Commandes Symfony & Développement rapide des applications
est basé sur l’architecture MVC
peut nécessiter le framework de persistance Doctrine et le
framework de présentation TWIG
Faiez CHARFI
Le code est réparti sur plusieurs dossier :
Institut Supérieur des Etudes Technologiques de Sfax config Contient les fichiers de configuration des services
Département Technologies de l’Informatique et des bundles.
public Contient les fichiers accessibles publiquement
par le client, tel que les fichiers css, js et images.
src Contient le code source de l’application :
Contrôleurs, Modèles, Formulaires, Migrations et
Dépôts.
2019/2020
Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé

Rappel Rappel
Les commandes Symfony Les commandes Symfony
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Rappel II Les commandes Symfony I

Le script console.php contient tous les commandes Symfony.


templates Contient les fichiers des vues (codés en HTML Syntaxe :
+ TWIG). bin/console paramètres
vendors Contient les vendors ajoutés au framwork. La valeur des paramètres permet de pointer vers la commande
bin Contient les scripts des commandes exécutables. souhaitée.
Le fichier .env contient les variables d’environnement Remarque
associées au projet.
Sous Windows il faut ajouter php au début de la commande.
Composer permet d’installer des nouveaux bundles à partir de
php bin/console paramètres
Packagist ou Symfony Recipes.
Plusieurs familles de commandes :
Génération de code : make
Commandes Doctrine : doctrine

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé
Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Les commandes Symfony II Symfony un RAD framework

En rapport avec le cache : cache Symfony est connu en tant que RAD (Rapid Application
En rapport avec la sécurité et la cryptographie
Developpement) framework.
etc.
console de Symfony comporte des commandes permettant la
Exemples génération automatique de code, en deux modalités :
Génération de Code de base (PHP/HTML/TWIG).
bin/console make:user
Génération de CRUD (Create/Research/Update/Delete).
bin/console doctrine:database:create Génération et exécution de scripts SQL.

Pour visualiser la liste des commande : Remarque


bin/console Il faut configurer la variable d’environnement DATABASE URL dans
ou le fichier .env pour que l’application puisse communiquer abec le
bin/console list SGBD.

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé

Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework Symfony un RAD framework
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes Commandes communes
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Commandes communes I Commandes communes II

Soit le diagrammes de classes participantes (MVC)


Créer/Générer la classe Ouvrier et son Repository
Commande
bin/console make:entity Ouvrier

Fichiers générés
Entity/Ouvrier.php
Repository/OuvrierRepository.php

Figure – Diagramme de classe participantes - Module Ouvrier

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé
Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework Symfony un RAD framework
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes Commandes communes
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Commandes communes III Commandes communes IV

Créer/Générer la classe OuvrierController et le template par


Créer/Générer la classe OuvrierType (Formulaire) défaut
Commande Commande
bin/console make:form bin/console make:controller

Fichier généré Fichiers générés


Form/OuvrierType.php Controller/OuvrierController.php
templates/ouvrier/index.html.twig

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé

Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework Symfony un RAD framework
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes Commandes communes
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Commandes communes V Commandes communes VI

Exécution des scripts de migration.


Générer la classe migration contenant le code SQL de
migration. Commande
Commande bin/console doctrine:migrations:migrate
bin/console make:migration
Résultat
Fichiers générés Création des tables dans la base de données.

Migrations/Version20200402112031.php pour chaque


Attention !
migration.
La génération de migration ne peut avoir lieu qu’après la création
Le nom du fichier de migration est constitué de la date et heure de de la base de données avec la commande
sa création.
bin/console doctrine:database:create

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé
Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework Symfony un RAD framework
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes Commandes communes
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Commandes communes VII Commandes communes VIII


Exécution des scripts de migration.
Commande
Génération automatique de CRUD. symfony serve
Commande ou
bin/console make:crud bin/console server:run
si le projet a été crée avec Composer, alors
Résultat
Tous les fichiers avec code opérationnel en rapport avec le CRUD : Résultat
contrôleur, modèle, vue. Démarrage du serveur web interne sur le port 8000.

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé

Rappel Rappel
Les commandes Symfony Les commandes Symfony
Symfony un RAD framework Accélérer avec le cache
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Commandes communes Architecture de Symfony
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Commandes communes IX

Remarque Un code PHP


ne peut pas s’exécuter sur le client.
Le serveur web interne est un CLI SAPI a apparu depuis PHP 5.4. n’est pas compilé mais interprété.
a. php.net convertit en HTML pour être exécuté sur le client.
Augmentation de nombre de fichier PHP ⇒ Mauvais temps
Vider le cache de l’application. de réponse.
Commande Comment résoudre le problème ?
bin/console cache:clear

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé
Rappel Rappel
Les commandes Symfony Les commandes Symfony
Accélérer avec le cache Accélérer avec le cache
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Architecture de Symfony Architecture de Symfony
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Accélérer avec le cache I Accélérer avec le cache II

Plusieurs types de cache :


Cache HTTP (coté client/navigateur)
Cahce d’OpCodes PHP
Cache applicatif
Cache MySQL
Reverse proxy
CDN : Content Delivery Network

Figure – Caches PHP

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé

Rappel Rappel
Les commandes Symfony Les commandes Symfony
Accélérer avec le cache Accélérer avec le cache
Développement rapide d’applications avec Symfony Développement rapide d’applications avec Symfony
Architecture de Symfony Architecture de Symfony
Fonctionnement d’une application PHP/Symfony Fonctionnement d’une application PHP/Symfony
Exercices Exercices

Accélérer avec le cache III Architecture de Symfony

Pour plus de détails sur les caches :


https://www.php.net/manual/fr/mysqlnd-ms.
quickstart.cache.php
https://www.php.net/manual/fr/features.
commandline.introduction.php
https://blog.nicolashachet.com/developpement-php/
optimisation-web-php-des-caches-a-tous-les-niveaux/
https://pub.phyks.me/sdz/sdz/
comprendre-et-utiliser-un-systeme-de-cache-php.
html
http://www.php-cache.com/en/latest/
Figure – Architecture de Symfony

Faiez CHARFI Framwork Web Avancé Faiez CHARFI Framwork Web Avancé
Rappel
Les commandes Symfony
Développement rapide d’applications avec Symfony
Fonctionnement d’une application PHP/Symfony
Exercices

Exercices

1 Explorer les liens en rapport avec les caches PHP.


2 Expliquer sommairement le rôle de chaque type de cache.
3 Quelle est la différence entre application Symfony et une
simple application PHP ?
4 Citez quelques avantages de l’utilisation d’un framework.
5 Expliquer le rôle de chaque dossier d’un projet Symfony.
6 Citez les familles de commandes Symfony.
7 Préparer une liste contenant toutes le commandes Symfony et
présenter leurs rôle.

Faiez CHARFI Framwork Web Avancé

Vous aimerez peut-être aussi