Chapitre 28. Projet : dans la savane
- Par Richard Gomez
Pages 601 à 608
Citer ce chapitre
- GOMEZ, Richard,
- Gomez, Richard.
- Gomez, R.
Citer ce chapitre
- Gomez, R.
- Gomez, Richard.
- GOMEZ, Richard,
Nous souhaitons écrire un programme simulant modestement un écosystème. Il s’agit de faire vivre des lions et des gazelles dans la savane. Voici les classes que nous souhaitons implémenter :
Notre modèle est très basique. Les lions mangent les gazelles. Les gazelles broutent dans les prairies. Les déplacements et le passage du temps font baisser le niveau de santé. La nourriture le fait augmenter. L’avantage de la programmation orientée objet réside dans le fait qu’on peut enrichir le modèle presque à volonté sans avoir à réécrire tout le programme. Le script commence par quelques imports :
Nous implémentons une classe Population qui sera instanciée une fois. L’instance enregistre des informations globales et contient les entités qui parsèment la carte du jeu. C’est un bon moyen d’avoir une vision globale permettant de faire interagir les entités présentes, tout en maintenant l’aspect encapsulé de la poo :On aurait pu écrire une classe Carte au lieu de Population. Si carte était une Carte, carte[a,b] serait une liste contenant toutes les entités ayant pour coordonnées (a,b). Il aurait fallu bien sûr mettre à jour la carte à chaque déplacement d’entité. Avec une carte, la recherche d’une proie est plus longue : il faut scanner case par case dans un voisinage autour du chasseur. Le lecteur essaiera les deux stratégies.
La racine est la classe Entité. Tout ce qui vit dans la savane est une instance de cette classe :
Toute entité possède un attribut population pointant vers la population (carte) du jeu…
Date de mise en ligne : 23/02/2023
Ce chapitre est en accès conditionnel
Acheter cet ouvrage
35,99 €
Acheter ce chapitre
5,00 €