---
# System prepended metadata

title: Sprint 1
tags: [sprint 01]

---

---
title: Sprint 1
tags : sprint 01
---
<!-- CSS -->
{%hackmd 1a_Fk3XiRNuJcn3_XP763Q %}

<div class="exercice">

# <!-- titre de l'exercice, laisser vide -->

Recopier le code ci-dessous :
```php=
$myHouse = new stdClass();
$myHouse->countRooms = 3;
$myHouse->garden = true;
$myHouse->city = 'La Roche sur Yon';

$anotherHouse = new stdClass();
$anotherHouse->countRooms = 3;
$anotherHouse->garden = true;
$anotherHouse->city = 'La Roche sur Yon';

var_dump($myHouse==$anotherHouse);
var_dump($myHouse===$anotherHouse);
```
1. Expliquer les valeurs affichées par ce code
1. Placer un point d’arrêt
1. Lancer l’exécution de ce code en mode « debug »
</div>
---
<div class="exercice">

#  

On souhaite stocker pour chaque maison, la surface de chacune des chambres. 

Par exemple, `$myHouse` a une chambre de 11m^2^ et une chambre de 9m^2^.

1. Proposer une solution pour créer un objet contenant la donnée surface
2. Stocker chacune des chambres dans `$myHouse`
3. Proposer une solution pour afficher les chambres.
</div>
---
<div class="exercice">

#  

Créer un fichier `House.php` contenant le code ci-dessous :
```php=
class House
{
}
```
Reproduire le code de l’exercice 1 avec la classe `House` à la place de la classe `stdClass`.

Quelle(s) différence(s) peut-on observer dans l’affichage des `var_dump` ?
</div>
---
<div class="exercice">

#  
Proposer une classe `Bedroom` et reproduire le code de l’exercice 2 avec les classes `House` et `Bedroom`.

</div>
<div class="exercice">

#  
Quels autres attributs pourraient-on définir pour les classes `House` et `Bedroom` ?
</div>
<div class="exercice">

#  

Quelles autres classes pourraient-on définir pour une application de gestion d’agence immobilière ?

Écrire un script pour illustrer l’usage de ces classes.

</div>
<div class="exercice">

#  
Recopier le code suivant et répondre aux questions :
```php=
$myHouse = new stdClass();
$myHouse->garden = true;
$myHouse->city = 'La Roche sur Yon';
$anotherHouse = $myHouse;
```
* Quelle est la valeur de l’attribut `city` de la variable `$anotherHouse` ?
* Compléter le script pour modifier la valeur de l’attribut `city` de l’objet `$myHouse` ?
* En mode debug, vérifier les valeurs des attributs de l’objet `$anotherHouse` ? Que peut-on en conclure ?

