Bibliotheque de programmation orientee objet en C pur : implementation de classes (int, float, char, array, point, vertex...) via structures et pointeurs de fonctions.
Telecharger & tester
make (bibliotheque sans main, testee via la moulinette Epitech ou des tests unitaires personnalises)
Rush 2 (B-PDG-300, "Standard Zorglub Library") explore la programmation orientee objet en C pur, sans classe ni heritage natif du langage. Le rush s'inspire du livre d'Axel-Tobias Schreiner "Objektorientierte Programmierung mit ANSI-C", qui montre que le C peut etre utilise comme un langage oriente objet a part entiere.
Chaque "classe" (int, float, char, array, point, vertex...) est implementee comme un fichier .c/.h independant a la racine du depot (aucune sous-arborescence par exercice n'est autorisee), exposant des constructeurs, destructeurs et methodes via des structures contenant des pointeurs de fonctions - le mecanisme classique d'encapsulation et de polymorphisme simule en C.
Contrainte notable : aucun fichier ne doit contenir de fonction main, les tests etant fournis et executes par la moulinette Epitech elle-meme. La compilation se fait avec les flags -std=gnu17 -Wall -Wextra, et le correcteur de style Marvin est desactive pour ce projet - la qualite du code est evaluee a l'oral, pas par un script automatique.
Au-dela de la simple implementation, le rush evalue la demarche de conception : comprendre pourquoi et comment structurer des objets en C prepare a des concepts qui seront approfondis plus tard dans le cursus (polymorphisme, interfaces, architecture logicielle).
Projet suivant
