1
Rappels sur la Programmation Orientée Objet
- Classe, instance, propriétés et méthodes, visibilité.
- Héritage, interface, classes abstraites.
- Méthodes automatiques et surcharge.
Travaux pratiques
Réalisation de la classe ADO (Abstract Data Object) qui alimentera les Web Services.
2
XML, JSON, DOM, SAX et XPath
- Document XML bien formé, règles de base.
- Document XML valide : DTD ou XSL.
- Le DOM PHP (analyse et création).
- Les XPath avec PHP et la validation avec PHP.
- Approche SAX : transformateurs XSLT.
- Les fonctions PHP de manipulation du format JSON.
Travaux pratiques
Création d'une fonction récursive d'analyse DOM. Création d'une fonction d'encodage/décodage. Création d'une méthode de la classe ADO, renvoyant les données au format XML et JSON.
3
Approche REST
- Principes de base et rappels HTTP.
- Les autres formats d'échanges : JSON, PHP sérialisé, MessagePack.
- Composants d'une architecture REST.
- Guides de conception d'une architecture REST.
- URL logiques versus physiques.
- Définition des codes erreurs.
- Documenter un Web service REST.
- ROA versus SOA / REST versus SOAP.
Travaux pratiques
Concevoir un Web Service.
4
Implémenter un Web service REST
- Ecriture de Web Services : lecture, insertion, mise à jour et suppression de données.
- Sécurité des transactions.
- Problématique du cachage.
- Mashup.
- Tester un service REST : navigateur et outils de tests.
Travaux pratiques
Création d'un Web Service en mode CRUD et sécurisation des opérations critiques. Paramétrage des types de retour. Création d'un flux RSS.
5
Implémenter un Client REST
- Invoquer un Web Service en mode GET depuis PHP.
- Utilisation des sockets et de cURL pour la création d'un contexte d'appel avec d'autres méthodes (PUT/DELETE/POST).
- Gestion des erreurs.
- Spécificités de l'approche AJAX en mode XML et JSON.
- Spécificités de l'approche AJAX.
- Insertion de Mashup en mode DOM HTML.
Travaux pratiques
Implémentation d'une page Web consommant les Web Services de plusieurs sources et présentation des résultats agrégés.
6
Frameworks PHP
- Qu'est-ce qu'un framework ?
- Les frameworks de création d'API REST en PHP.
- Mise en place d'un Web Service avec un framework.
Démonstration
Implémentation d'un service REST via un framework.