• 6 heures
  • Facile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 08/11/2019

Structurez votre programme

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

 

Notre programme est comme un monde tout à fait vierge dans lequel il n'y aurait absolument rien. Nous devons apprendre à notre programme les concepts qui nous semblent, à nous, basiques afin qu'il puisse lui aussi les manipuler.

Imaginons que vous rencontriez un extraterrestre et que vous vouliez jouer à la bataille navale avec lui. Vous lui montrez le jeu et il rêve d'en jouer (évidemment !). Avant de lui en expliquer les règles, vous allez commencer par lui expliquer ce que représentent les différentes pièces du jeu.

  • Un pion rouge est un obus.

  • Le plateau est la mer. Il est composé de plusieurs zones de jeu. Le plus petit bateau fait deux points de long et il est possible de le positionner en diagonale, donc on peut dire qu'une zone minimale de jeu est un carré de deux points de largeur et de deux points de hauteur. Indiquer la position d'une zone est simple : nous donnons l'abscisse et l'ordonnée.

  • Un bateau est un objet qui avance sur l'eau, donc sur le plateau. Il a une longueur en nombre de zones.

  • Un obus et un bateau ont une position. Ils partagent ce concept de position. Une position est composée de deux coordonnées : une abscisse, représentée par des nombres, et une ordonnée, représentée par des lettres.

Objets

Bien bien ! A ce point de la discussion, notre visiteur venu d'ailleurs vous écoute avec attention. Vous continuez donc à discourir sur le jeu mais en divergeant sur votre programme. En fait, vous vous dites que ce jeu de bataille navale illustre parfaitement la manière dont vous modéliserez votre monde : 

  • un Agent est représenté par un pion rouge. Il a plusieurs attributs, dont une position. 

  • une Position est représentée par le placement d'un pion sur le plateau. 

  • une Zone est représentée par une zone minimale de jeu dans ma bataille navale. 

  • Les Graphiques ne sont pas dans le jeu de bataille navale mais il faut quand même y songer !

Nous avons nos objets ! Parlons maintenant des attributs de chacun.

Attributs

Agent

Un agent a plusieurs attributs (âge, sexe, ...) dont l'agréabilité et sa position sur Terre.

Zone

Une Zone est un rectangle, elle a donc deux positions complémentaires : celle de son coin inférieur gauche et celle de son coin supérieur droit.

Position

Une position est un objet utilisé à la fois par un agent et par une zone. Elle a une latitude et une longitude. 

Graph

Enfin, un graphique a un ensemble de données ayant chacun une abscisse (axe x) et une ordonnée (axe y). 

 

Méthodes

Chaque objet a une méthode qui lui sert à générer de nouveaux objets sur même modèle. Cela peut paraitre abstrait pour le moment mais nous reviendrons sur cette notion un peu plus tard. 

Une Zone doit calculer la densité de population. Pour cela, elle doit connaitre la population qui vit sur son périmètre ainsi que la surface en kilomètres carrés qui la compose. Nous pouvons donc déjà y déceler trois méthodes importantes :  population ,  area  et  population_density . 

Notre diagramme de classe
Notre diagramme de classe

 

 

Nous avons désormais nos objets bien en tête ! Passons à une étape essentielle : celle de la programmation !

 

Exemple de certificat de réussite
Exemple de certificat de réussite