Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Communication client-serveur
PACT 2016 Encadrement Informatique
2
Objectif Communication entre deux programmes Java tournant sur la même machine Les options ci-dessus entre deux PC différents, ou entre un appareil Androïd et un PC, ou entre deux appareils Androïd Les options ci-dessus avec des programmes écrits dans des langages différents (ex: Java et C/C++) Les options ci-dessus avec plus de 2 entités communicantes Les options ci-dessus utilisant Internet/Wifi ou bluetooth Une communication simple commande/réponse en texte Une communication plus complexe incluant aussi des transferts de ressources Une communication à débit plus élevé nécessitant l’utilisation d’un format binaire Une communication utilisant un protocol standard comme HTTP 17/11/16 Communication Client Serveur
3
Objectifs pédagogiques du module
Savoir communiquer entre deux programmes tournant sur 1 ou 2 machines en utilisant le réseau Définir le bon niveau de communication et les éléments du dialogue en fonction du contexte 17/11/16 Communication Client Serveur
4
Architecture du module
Appareil 1 Appareil 2 module module Client Serveur module module API Client API Serveur module module 17/11/16 Communication Client Serveur
5
Livrables Document: étude complète des échanges
Nature (type des données) Fréquence Taille Contraintes (débit, utilisation d’un navigateur, …) Synchrone – asynchrone ? Liste exhaustive des commandes et réponses Code: Java réalisant une communication de messages entre deux nœuds (initialisation de l’interface, formatage et décodage de messages simples) Document: étude des bibliothèques à utiliser et des interfaces du client et du serveur pour les autres modules Option: Code client Android / Python / C++ Code: final (référence Git) 17/11/16 Communication Client Serveur
6
Guide Commandes avec des paramêtres simples + réponses textuelles courtes Extension du Knock Knock Transferts binaires simples Commandes avec des paramêtres complexes et / ou réponses complexes, transferts binaires ou mixtes HTTP (plus lourd à mettre en oeuvre) Client Android App + Navigateur (pour iOS) HTTP + JSON 17/11/16 Communication Client Serveur
7
Livrable 1 Document: étude complète des échanges
Nature (type des données) Fréquence Taille Contraintes (débit, utilisation d’un navigateur, …) Synchrone – asynchrone ? Liste exhaustive des commandes et réponses Plus vous avez d’informations, plus j’aurai l’impression que vous avez compris :D Livrable = le document word ou pdf envoyé par avec le titre PACT-XY-clientServeur-livrable2 17/11/16 Communication Client Serveur
8
Livrable 2 Faire le tutoriel Knock Knock Server Livrable = le code et un log d’execution, dans un zip, envoyé par avec le titre PACT-XY-clientServeur-livrable2 17/11/16 Communication Client Serveur
9
Livrable 3 Interface de la partie serveur
Interface de la partie client Question: Connection permanente ? Modification du code en conséquence Extension pour clients multiples (option) Une connection réutilisée ? Autant de ports et de Thread que de clients ? Bibliothèque à utiliser (option) Protocole HTTP Livrable = le document word ou pdf envoyé par avec le titre PACT-XY-clientServeur-livrable3 17/11/16 Communication Client Serveur
10
Livrable 4 Pour android, demandez au binome android de vous faire une classe pour intégrer votre travail Pour un autre langage, traduisez un des cotés du Knock Knock Testez Livrable = le code et un log d’execution, dans un zip, envoyé par avec le titre PACT-XY-clientServeur-livrable2 17/11/16 Communication Client Serveur
11
Evaluation 2 notes: Janvier: L1 à L4 Avril: L5
17/11/16 Communication Client Serveur
12
Livrable 5 Code final Dans le git Communication Client Serveur
17/11/16 Communication Client Serveur
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.