Publié le : 29/07/2021
Workflow de développement avec Symfony
Nous allons montrer un meilleur workflow de développement sous Symfony. Pour ce faire, nous allons Symfony CLI ou client Symfony.
Le Symfony CLI va nous permettre :
- de créer des projets Symfony,
- fournir un serveur web HTTP/2,
- générer des certificats TLS (Vous pouvez voir dans ce lien un article de l’installation manuel de certificat en mode local),
- etc…
Installation de Symfony CLI
Pour installer Symfony CLI, il faut aller sur la page https://symfony.com/download. Ensuite, il vérifie le système d’exploitation qui veut installer Symfony CLI.
Pour installer Symfony CLI sous Linux, nous avons la commande :
$ wget https://get.symfony.com/cli/installer -O - | bash
Une fois que l’installation est faite, nous pouvons exécuter la commande symfony
et avoir un résultat comme ci-dessous.
Le workflow de développement avec Symfony en utilisant Symfony CLI
Pour développer avec Symfony il faut :
- créer un projet Symfony ;
- utiliser un serveur web, de préférence avec un certificat ;
- créer le contrôleur ;
- créer le template.
Création d’un projet avec Symfony CLI
Nous avons vu dans l’article : Créer son premier projet avec Symfony que pour créer un micro-application symfony on exécute la commande :
$ composer create-project symfony/skeleton hello-world
Mais avec Symfony CLI, on exécute :
$ symfony new hello-world
De ce fait, la commande de création a été simplifiée. De plus, le projet a été ajouté automatiquement à un repository git.
Serveur de développement
Nous avons aussi vu que pour démarrer un serveur sous Symfony, nous allons exécuter la commande :
$ php -S 127.0.0.1:8000 -t public
Mais avec Symfony CLI, nous allons exécuter la commande :
$ symfony serve --no-tls
Cette commande permet de lancer un serveur en http.
Par contre si on veut avoir un serveur local de développement avec un certificat, il nous faut installer ce certificat avec la commande :
$ symfony server:ca:install
Et ensuite exécuter la commande suivante pour lancer le serveur :
$ symfony serve
L’installation du certificat est facilité, et cela permet d’avoir un serveur de développement qui utilise https. Et lorsque l’on fait du développement, pour tester différents fonctionnalité, le protocole https est majoritairement requis.
Création du contrôleur avec le console de Symfony
Une fois que le projet Symfony ait été créé et que le serveur fonctionne, passons maintenant au développement. Pour commencer, comme dans les projets Symfony, nous allons créer le contrôleur.
Dans les articles précédents, on a créé les contrôleurs manuellement. Dans cet article, nous allons le créer via le console
de Symfony.
Le console
de Symfony se trouve dans le répertoire bin
du projet Symfony.
Ensuite, pour créer le contrôleur, nous allons utiliser le bundle maker
. Ainsi pour installer ce bundle en mode développement, nous allons exécuter la commande :
$ composer require maker --dev
Avec ce bundle, nous pouvons créer facilement et rapidement tous les éléments (classes) qu’on a besoins comme :
- contrôleur ;
- formulaires ;
- entités de classes Doctrine ;
- etc…
Avant de pouvoir créer le contrôleur, il faut installer l’annotations.
$ composer require doctrine/annotations
Pour créer, alors, le contrôleur, nous allons taper la commande :
$ bin/console make:controller DefaultController
Création du template Twig
Avant de pouvoir utiliser Twig, il nous faut l’installer avec la commande :
$ composer require twig
Cette commande est à exécuter une seule fois.
Dans cette article, nous avons les différents étapes (wokflow) pour faire un développement d’application ou de site web avec Symfony. Il nous reste à voir comment intégrer le modèle dans notre projet pour l’architecture MVC.