2017_2018:s3:concprogobjet:td:td7
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
2017_2018:s3:concprogobjet:td:td7 [2017/11/24 08:10] – [Capteurs logiciels à état] blay | 2017_2018:s3:concprogobjet:td:td7 [2017/12/06 09:42] (current) – [Rendu] blay | ||
---|---|---|---|
Line 3: | Line 3: | ||
====== Digital Home : application des DP ====== | ====== Digital Home : application des DP ====== | ||
- | <note warning> | + | |
Objectifs de ce TD : | Objectifs de ce TD : | ||
- Appréhender une petite application dans sa totalité | - Appréhender une petite application dans sa totalité | ||
Line 59: | Line 59: | ||
QUESTION (5 mn): | QUESTION (5 mn): | ||
- | * Récupérer le code " | + | * Récupérer le code " |
<note tip> | <note tip> | ||
Line 76: | Line 76: | ||
- Tester vos capteurs logiciels. | - Tester vos capteurs logiciels. | ||
- | |||
- | |||
- | Voici le diagramme de classe concernant cette partie, pour vous aider éventuellement. | ||
- | |||
- | {{ : | ||
===== Capteurs logiciels à état ===== | ===== Capteurs logiciels à état ===== | ||
Line 103: | Line 98: | ||
StateLazy sl; | StateLazy sl; | ||
- | PhysicalSensor | + | Sensor |
@Before | @Before | ||
Line 124: | Line 119: | ||
QUESTION (15 mn): | QUESTION (15 mn): | ||
- | - Mettez à jour votre diagramme de classe si besoin. | + | - Mettez à jour votre diagramme de classe si besoin |
- Définissez la classe '' | - Définissez la classe '' | ||
- Testez votre classe, voici des exemples si cela peut vous aider. | - Testez votre classe, voici des exemples si cela peut vous aider. | ||
Line 180: | Line 175: | ||
* On veut définir des capteurs à un seul bouton (appel de la méthode press). | * On veut définir des capteurs à un seul bouton (appel de la méthode press). | ||
* L' | * L' | ||
- | * Dans l' | + | * Dans l' |
- | * Dans l' | + | * Dans l' |
- | * Dans l' | + | * Dans l' |
- Mettez à jour votre diagramme de classe si besoin. | - Mettez à jour votre diagramme de classe si besoin. | ||
- Définir la classe '' | - Définir la classe '' | ||
Line 195: | Line 190: | ||
QUESTION (10 mn): | QUESTION (10 mn): | ||
- | | + | |
- | | + | |
- | | + | |
- | Exemple de trace : | + | Exemple de l' |
< | < | ||
Salon | Salon | ||
Line 207: | Line 202: | ||
===== Maison numérique ===== | ===== Maison numérique ===== | ||
- | Une maison numérique est une composition de lieux dont certaines | + | Une maison numérique est une composition de parties |
- | Il doit être possible d' | + | Il doit être possible d' |
+ | Voici la maison que vous devez modéliser : | ||
+ | - Un RDC, un étage et un extérieur. | ||
+ | - Un étage avec 2 chambres, chacune avec son thermometre et un thermostat global à l' | ||
+ | - etc. | ||
+ | {{ : | ||
QUESTION (25 mn): | QUESTION (25 mn): | ||
- | * Modéliser | + | * Modélisez |
* Avez-vous utilisé un ou des DP? Si oui, annotez vos classes avec des " | * Avez-vous utilisé un ou des DP? Si oui, annotez vos classes avec des " | ||
- | * Implémenter | + | * Implémentez |
+ | * Implémentez la maison donnée ci-après, et vérifiez que vous êtes bien capable de la représenter. | ||
<note tip>Oui oui, l' | <note tip>Oui oui, l' | ||
Line 225: | Line 226: | ||
- | Voici la maison | + | |
- | - Un RDC, Un étage et un extérieur. | + | Voici une nouvelle |
- | - Un étage avec 2 chambres, chacune avec son thermometre et un thermostat global à l' | + | |
- | - etc. | + | < |
- | {{ : | + | maison = new Maison(); |
+ | rdc = new PartieMaison(" | ||
+ | cuisine = new Piece(" | ||
+ | sam = new Piece(" | ||
+ | |||
+ | parentalPart = new PartieMaison(" | ||
+ | chambreParents = new Piece(" | ||
+ | sdbParent = new Piece(" | ||
+ | parentalPart.addLieu(chambreParents); | ||
+ | parentalPart.addLieu(sdbParent); | ||
+ | parentalPart.addSensor(thermostatParental); | ||
+ | |||
+ | rdc.addLieu(cuisine); | ||
+ | rdc.addLieu(sam); | ||
+ | rdc.addLieu(parentalPart); | ||
+ | |||
+ | |||
+ | etage = new PartieMaison(" | ||
+ | chambre1 = new Piece(" | ||
+ | chambre2 = new Piece(" | ||
+ | etage.addLieu(chambre2); | ||
+ | etage.addLieu(chambre1); | ||
+ | |||
+ | exterieur = new PartieMaison(" | ||
+ | exterieur.addSensor(externeDetecteurLumiere); | ||
+ | maison.addLieu(rdc); | ||
+ | maison.addLieu(etage); | ||
+ | maison.addLieu(exterieur); | ||
+ | |||
+ | </ | ||
===== Tableaux de Contrôle ===== | ===== Tableaux de Contrôle ===== | ||
Line 444: | Line 474: | ||
===== Rendu ===== | ===== Rendu ===== | ||
- | <box round rgb(150, | + | <box round rgb(150, |
- | * Mettez un mail à votre encadreur pour Mme Lecat ou [[http:// | + | * [[http:// |
* Un document contenant | * Un document contenant | ||
- | * votre modèle de classe final intégré dans un document pour que nous n' | + | * votre **modèle de classe final** intégré dans un document pour que nous n' |
- | * les évolutions du modèle | + | |
* des explications sur les raisons de ce modèle (dont vous êtes très fiers) et les leçons apprises. | * des explications sur les raisons de ce modèle (dont vous êtes très fiers) et les leçons apprises. | ||
* Les codes et les tests. | * Les codes et les tests. |
2017_2018/s3/concprogobjet/td/td7.1511511018.txt.gz · Last modified: 2017/11/24 08:10 by blay