S3 : Conception et programmation objet avancée
-
- TDs : Description, Livrables, Evaluation
This is an old revision of the document!
Objectifs : Travailler sur de petits exemples différents points d'un développement pragmatic.
Nos objectifs sont :
Déroulement
Run Five 7- to 10-minute programming sprints. At the end of each sprint, ring a bell or similar, each team shows its latest program running to another team. Clock does not stop between iterations, demos cost programming time. (Yes, truly, teams have done this successfully with /7/ minute iterations!)
On distingue deux formes de consommation pour un même modèle de voiture :
C(v) = 2(d/v) + K v^2 avec t en heures, d en km et k un coefficient variable en fonction des voitures.
Si une voiture roule à 150 km/h
sa consommation est donc en litre au 100km
de :
C(150) = 2(100/150) + K * 150^2 pour la Cl
Avec un coefficient de 3,85*10^-4
, C(150) = 9.99583333333; C(64) = 4,7 litres au 100km
{“consommation”: {“route” : “6.3”, “urbaine” : “8.1” } }
, Intégrer ce type de “calcul” de la consommation dans votre modélisation, quel est l'impact?A la fin de cette séance (au plus tard en fin de semaine)
Le bus est maintenant composée de boîtes à messages. Plusieurs producteurs peuvent émettre des messages vers une même boîte, plusieurs consommateurs peuvent lire les messages dans une boite.
Exemples de scénario :
A FAIRE :
Prenez le cours et vos codes passés un peu “conséquent” et donner des exemples de codes STUPID (au moins Deux exemples différents) et ce que vous feriez maintenant pour ne plus faire les mêmes erreurs. Rendu noté sur la pertinence des réponses.
Le bus supporte à présent différents types de messages : Rémanent, Ephemere, Fondamental, Protegé, Intelligent …
A INTEGRER : Rearmamble : il s'etint au bout d'un temps donné, il doit etre réactivé et si il n'est pas rearma u bout d'un certain temps il est détuit.. cela peut servir pour la gestion des pannes.
Chacun de ces types de messages répond aux exigences suivantes concernant leur cycle de vie
Création | Lecture | MiseAJour | Destruction | ||
---|---|---|---|---|---|
Rémanent | Il connait son créateur | Peut être mis à jour par son créateur | Ne peut être détruit que pas son créateur | ||
Ephemere | Est automatiquement retiré de sa boîte dès qu'il est lu | Ne peut pas être mis à jour | Ne peut être détruit que s'il n'est plus dans une boite | ||
Temporel | Il connait la date où il a été créé et sa durée | Il ne peut être lu que s'il n'est pas périmé. S'il est périmé, il est détruit lorsque l'on demande à le lire | Peut être mis à jour | Est automatiquement détruit quand il est périmé | |
Intelligent | Il connait son créateur | N'est proposé qu'à ceux qui ne l'ont pas encore lu | Ne peut pas être mis à jour | Ne peut être détruit que si il a été lu au moins une fois |
A FAIRE
En fonction des mots clefs qui constituent le contenu des messages, ils sont automatiquement associés à une boîte de message. Si aucune correspondance n'est détectée une boîte “Divers” est utilisée.
Exemples :
A FAIRE
Si maintenant, on veut créer une nouvelle boîte qui reçoit les messages contenant contenant “photo”, que faut-il faire pour que votre système le prenne en compte?
Si maintenant on veut que tout message dans la boite SNAPCHAT soit ephemere ?
Une route est définie par des Tronçons. Un tronçon est défini par deux Positions et une longueur. Une Position est définie par un nom.
Calculer le plus cours chemin entre deux positions. Déterminer la complexité de votre algorithme.
⇒ Outils de recherche de code dupliqué?
Le bus gère des “boîtes à message”. Plusieurs producteurs peuvent émettre des messages vers une même boîte, plusieurs consommateurs peuvent lire les messages dans une boite. Dans le scénario de base, la voiture A a choisi d'émettre son message vers la queue “Etat Des Routes”. Les consommateurs déclarent les boîtes qui les intéressent. Ils peuvent lire les messages qui les intéressent sur une boîte donnée ou obtenir tous les messages qui les intéressent indépendamment des boîtes. Plusieurs types de messages? Qui est responsable de créer les messages? Qui connait les boîtes de messages ?
- Il sera possible de définir différentes formes de souscription.
Nous n'aborderons, hélas, pas les aspects distribués.