Programmation orientée objet (POO) pour le Web en PHP

But de la formation

Construire des applications Web plus robustes avec la programmation orientée objet (POO) en PHP.

Description

PHP est un langage de programmation destiné principalement à la programmation d’applications Web dynamiques avec l’utilisation d’une base de données. Contrairement à d’autres langages, PHP s’intègre aux pages HTML et est en partie dédié à la génération de pages HTML dynamiques. PHP permet de faire de la programmation purement procédurale, mais fournit également tous les outils nécessaires pour ceux qui veulent faire de la programmation orientée objet.

Objectifs

- Décrire la structure d’un programme orienté objet
- Voir les technologies qui permettent d'organiser le travail de développement: documentation et contrôle de qualité
- Étudier les patrons de conception utiles pour la création d'une application architecturée

Méthodologie

Exposés théoriques en alternance avec des exercices pratiques. Les exercices pratiques consistent en : - Création d’une application Web dynamique PHP avec un formulaire HTML5 - La réalisation d’application orientée objet architecturée en PHP

Clientèle visée

Professionnels, techniciens

Particularité

Les programmeurs s’intéressant à la création d’application Web orientée objet.
Préalable : le candidat doit avoir une base en programmation procédurale et maîtriser le HTML5.

Contenu

Bases de la programmation objet

  • Déclaration d'une classe et de ses propriétés
  • Instantiation
  • Création d'un constructeur
  • Création d'une méthode
  • Suggestions de type (type hinting)
  • Héritage

_ Visibilité des attributs et méthodes

  • Exercice pratique : à partir d’une mise en situation, création et programmation d’un ensemble de classes en PHP

Concepts avancés de la programmation objet

  • Méthodes et propriétés statiques
  • Classes abstraites, interfaces et traits
  • Gestion des erreurs avec les exceptions
  • Classes et méthodes finales
  • Copie profonde d'objets avec __clone()
  • Conversion d'un objet en chaîne de caractères avec __toString()
  • Définition d'une méthode appelée lors de la destruction d'un objet
  • Exercice pratique : réalisation d’une application Web orientée objet en PHP

Outillage pour travailler avec les objets

  • Espaces de nommage
  • Chargement automatique
  • Fonctions pour tester les classes et les méthodes
  • Survol de l'API de réflection

Contexte de production

  • Documenter le code avec PHPDocumentor
  • Faire des tests avec PHPUnit
  • Mettre en place des tests fonctionnels avec Selenium
  • Exercice pratique: documenter et faire des scénarios de test pour notre application Web

Création code architecturé

  • Présentation des patrons de conception
  • Quelques patrons de base: singleton, factory, command
  • Patrons d'entreprise: registry, front controller, page controller, transaction script, domain model
  • Patrons de persistance: data mapper, active record, unit of work, lazy load, identity map
  • Exercice pratique: analyser une application Web complète architecturée
Benoit Dubuc

Benoit Dubuc

M.Eng., Ph.D.

Benoit Dubuc est détenteur d'un Ph. D. en génie électrique de l'Université McGill, spécialisé en intelligence artificielle (vision par ordinateur). Après un séjour postdoctoral en informatique théorique à l'Université de Montréal, il a géré le développement d'outils de gestion de contenu Web au début des années 2000. Ces outils sont déployés sur la plupart des sites Web créés par son entreprise dans les 10 dernières années, dont le portail de la Société des musées québécois, récipiendaire du prestigieux Web d'Argent d'AVICOM en 2004.