Feuilles de root

Logiciels libres, programmation et économie

Accueil » Programmation » Programmation Scheme » La programmation orientée objet en Racket

La programmation orientée objet en Racket

Introduction

Comme Scheme, Racket est un langage de programmation multi-paradigme. Il permet donc la programmation orientée objet. Scheme est extensible avec un système de macros puissant, ce qui permet d'utiliser différents système d'objets. Nous allons utiliser ici le système d'objet fourni avec Racket.

Définir une une classe

Imaginons que l'on développe un jeu vidéo de stratégie. Il est habituel de définir différentes classes pour représenter les types d'objets du jeu : bâtiments, unités, pièges, déclencheurs…

En Free Pascal nous pourrions définir une classe représentant une unité ainsi :

TUnit = class
    private
        { private declarations }
    public
        { public declarations }
    end;

L'équivalent en racket est :

(define unit%
  (class object%
    (super-new)))