Catégorie : Langages
-
Modéliser une BDD grâce à UML
Présentation de UML Signifiant Unified Modeling Language, ce qui se traduit par Langage de Modélisation Unifié, UML est en langage ayant pour but de représenter sous forme d’une modélisation graphique la conception d’un logiciel, le fonctionnement d’un système ou tout processus, d’une façon normée. Norme UML Conventions de nommage Élément Singulier / pluriel Accents Casse…
-
Sauvegarder avec mysqldump
Présentation et installation L’outil mysqldump permet l’extraction et la sauvegarde de données ou de la base de données elle-même, c’est-à-dire que la sauvegarde peut inclure la définition du schéma de la BDD (tables, relations etc.). Pour l’installer, comme il y est intégré c’est mysql-client qu’il faut installer. Droits nécessaires Il est nécessaire d’avoir les privilèges…
-
Créer un projet Symfony 7
Initialiser le projet Installation des prérequis Tout d’abord, il faut une version de PHP installée sur le poste, ou bien passer par Docker. Il faut également avoir installé Composer sur le poste. Ensuite, il faut Installer scoop pour pouvoir installer Symfony CLI. Il s’agit d’un utilitaire en ligne de commande faisant intermédiaire pour utiliser Composer.…
-
LocalStorage et SessionStorage
Qu’est-ce que c’est ? Qu’est-ce que cela permet ? Le LocalStorage et le SessionStorage permettent d’avoir des données persistantes côté client, donc dans le navigateur, sous forme de clé / valeur et sans devoir recourir aux cookies. Cela peut permettre de charger des données dans le navigateur au lancement de l’application pour ensuite éviter des…
-
UUID
Que sont les UUID ? L’acronyme UUID signifie Universally Unique Identifier, qui se traduit par identifiant universel unique. Nuances avec les identifiants « classiques » Habituellement, on utilise un ID incrémenté dont le champ dispose d’un index unique, ou bien est typé clé primaire ce qui revient au même. Dans ce cas, chaque identifiant est unique au…
-
Les Enums en PHP
Dans sa version 8.1, PHP gère nativement le type ENUM et cela permet de simplifier et rationaliser le code à écrire. Nous devions créer une méthode afin de récupérer chaque valeur possible et, par exemple, afficher une liste déroulante à l’utilisateur. Désormais, nous disposons automatiquement de la méthode cases qui retourne une variable de type…
-
PHP et les Throwable, Error, Exception
Fonctionnement depuis PHP 7 Depuis PHP 7, la plupart des erreurs sont signalées via une exception de type Error (ou qui étend Error). Comme toutes exceptions, les exceptions de type Error remontent jusqu’à être attrapées par un catch correspondant ou bien, s’il n’y en a pas, par le gestionnaire d’exception défini par défaut avec la…
-
Nouvelles syntaxes PHP
Fonction recevant un nombre indéterminé de paramètres d’un même type Avec un type simple : Avec un type plus complexe : Cela permet d’éviter ce genre de code : Récupérer certains éléments d’un tableau avec la méthode list Depuis PHP 7.4, disponibilité des arrow functions, aussi nommée short closures Les Union Types Passer de switch…
-
Les design patterns, ou patrons de conception
Que sont les patrons de conceptions ? Définition Un patron de de conception est une solution qui répond à une problématique récurrente de conception. En développement, les mêmes problématiques reviennent régulièrement et pour y répondre de manière uniforme sans devoir réinventer la roue, des partons de conception ont été inventés. Un patron de conception n’est…
-
Docker – Créer une stack LAMP
Le but Le but est d’obtenir l’environnement de développement suivant : Ubuntu 22.04 LTS PHP 8.1 MySQL 8.0 Le fichier Dockerfile Le fichier docker-compose.yml Script PHP de connexion à la BDD Les différentes URL d’accès Accéder aux sources : http://localhost:8080/ Accéder à PHPMyAdmin : http://localhost:8181/
-
Programmation SOLID
L’acronyme SOLID décrit 5 principes / bonnes pratiques en développement : Ci-après, une explication détaillée de chaque principe. Explications détaillées des 5 principes SOLID Responsabilité unique Afin d’éviter une certaine complexité du code, des classes à plusieurs milliers de lignes et une forte dépendance, une classe / une méthode ne doit avoir qu’une seule responsabilité,…
-
PHP_CodeSniffer
Présentation de PHP_CodeSniffer ? PHP_CodeSniffer, aussi connu sous le nom raccourci PHPCS, est un outil conçu en PHP par l’équipe Squiz Labs et qui vise à vous aider dans l’amélioration de la qualité de votre code. Le projet ne dispose pas de site officiel mais d’un projet Git : GitHub PHP_CodeSniffer. PHPCS détectera des écarts…
-
PHP CS Fixer
Présentation de PHP CS Fixer PHP CS Fixer a pour but de détecter et réécrire automatiquement le code d’un projet PHP afin que celui-ci respecte les normes PSR ou autres comme par exemples des règles « maisons ». Le projet ne dispose pas de site officiel mais d’un projet Git : GitHub PHP CS Fixer.
-
Détecter les copiés / collés en PHP avec PHP Copy/Paste Detector
Présentation de PHP Copy/Paste Detector Conçu par Sebastian Bergmann, PHP Copy/Paste Detector a pour but de détecter les sections de code copiées / collées dans un projet PHP, ce qui va à l’encontre de la règle Don’t Repeat Youself (DRY). Plus d’informations sur le projet et son utilisation sur disponibles sur : Le site officiel…
-
PHP Mess Detector
Présentation de PHP Mess Detector PHP Mess Detector a pour but de détecter dans un projet PHP de la complexité ou des mauvais usage qui mènerons inévitablement à des bugs et à un coup de maintenance important comme : Des méthodes et propriétés inutilisées. Des paramètres inutiles dans les méthodes. Des expressions ou morceaux de…
-
PHP et les PSR
Que sont les PSR ? PSR signifie PHP Standard Recommendation. Il s’agit d’un ensemble de normes conçues par le PHP-FIG, PHP Framework Interoperability Groupement. Ce groupe, dont tout le monde peut faire partie à certains niveaux, est en partie composé de personnes travaillant sur des projets comme Symfony, Composer, Drupal, Joomla, PEAR, phpDocumentor, PrestaShop, Slim…
-
PHPStan
La majorité des informations qui suivent sont directement issues du site officiel de PHPStan. Présentation de PHPStan Quelle est l’utilité de PHPStan ? PHPStan est un outil open-source d’analyse statique du code source PHP et est lui-même codé en PHP. Il a pour but de parcourir un code PHP sans l’exécuté afin d’identifier des anomalies.…
-
Erreurs et exceptions depuis PHP 7
Les objets Error et Exception Distinction entre les erreurs PHP et les exceptions du développeur À partir de la version 7, PHP modifie sa gestion des erreurs. La majorité des erreurs sont lancent désormais une exception Error qui implémente l’interface Throwable. L’objet Exception, qui implémente également l’interface Throwable, permet au développeur de créer ses propres…
-
Le design pattern Singleton
Présentation Le design pattern Singleton est un patron de conception de création d’objet. Il impose qu’une classe n’est qu’une seule instance possible et pas plus d’une et fourni un accès faisant systématiquement référence et cette instance unique. Pour cela, il y a plusieurs étapes à respecter : Le constructeur de la classe devra être soit…