Application de la POO à tkinter


Etape 4 - Héritage

Consignes permanentes :

  • Copier/coller le code ci-dessous dans un idle et le compléter en suivant les indications suivantes.
  • Tous les termes en italique dans le code doivent être remplacés par des valeurs correctes (attributs, méthodes, ...).
  • D'éventuels points d'interrogation ??? dans le code doivent être remplacés par du code valide.

Exercice

On souhaite animer également des ellipses. Il est possible de définir également une classe Ellipse mais on s'aperçoit que cette classe partage beaucoup de code avec la classe Rectangle.
Il est donc astucieux de dériver les classes Rectangle et Ellipse d'une classe Figure_geom regroupant attributs communs et méthodes communes.

  • Renommer la classe Rectangle en Figure_geom() et initialiser self.id à None.
  • Créer deux classe filles, Rectangle et Ellipse, à partir de la classe Figure_geom() dans lesquelles :
    - il sera fait appel à la méthode super().__init__() ;
    - self.id sera initialisé avec les figures géométriques correspondantes.


Etape 5 - A vous de jouer !

Il est possible de détecter des collisions entre objets, de déplacer certains objets grâce au clavier...

Code


On constate sur cet exemple l'efficacité de la programmation objet : à partir d'un objet générique (qui possède les caractéristiques communes à tous les objets dérivés à venir), on dérive des classes filles qui héritent des attributs et des méthodes de la classe parent, éventuellement surchargés ou remplacés.

Programmation objet