Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
1Activity
0 of .
Results for:
No results containing your search query
P. 1
Oocheeps Rapport

Oocheeps Rapport

Ratings: (0)|Views: 28|Likes:
Published by amoswenger

More info:

Published by: amoswenger on Aug 04, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

08/03/2009

pdf

text

original

 
Amos Wenger, MT-BA2 30/04/2009
oocheeps
- projet #2 d'info MT 2009
Le projet, s'il laisse peu de liberte quand a l'application en elle-meme, se prete tout a fait aune approche orientee objet. Cependant, le langage principal demande est le C. C'est pourquoi j'ai decide de creer un petit langage oriente objet qui serait traduit en C pur a l'aided'un compilateur que j'ecrirais moi-meme.Au bout d'environ trois mois de travail dans mon temps libre, je suis arrive a une versionassez complete du langage et de son compilateur, que j'ai appele
ooc
(Object-Oriented C). Lecompilateur est ecrit en
Java
, pour question de preferences personelles. Le processus decompilation d'un programme ooc est le suivant :Ainsi, l'enonce du projet est respecte, car le code source rendu est bien en C pur. De plus,c'est une application de la meta-programmation. Je tiens a bien souligner que j'ai tout ecritmoi-meme, specifications du langage
ooc
, implementation, et code source de
oocheeps
, le projet demande.Le code dans ce rendu intermediaire est le code C genere par mon compilateur. Si le professeur et/ou les assistants manifestent des interets pour le code source .ooc qui en est al'origine, je leur enverrais volontiers.La syntaxe du langage
ooc
est largement inspiree du
Java
, avec quelques omissions etquelques additions. Notamment, comme il est traduit en C, il s'interface tres facilement avecdes librairies existantes. Par exemple, l'instruction "use" permet d'importer les bons fichiersheaders et de linker avec les bonnes librairies statiques et dynamiques pour une librairiedonnee.Tout dans
ooc
est fait pour faciliter la tache du programmeur. Le code C produit est
portable
(teste sous Gentoo Linux, Windows XP/VirtualBox avec mingw, et RedHat Linux enCOSUN) et
lisible
(ex. correctement indente la plupart du temps).1 / 3
 
Amos Wenger, MT-BA2 30/04/2009
Pour donner un avant-gout, voici un court exemple (qui n'a rien a voir avec le projet) de codesource
ooc
, avec coloration syntaxique:Apres avoir construit un tel outil, il m'est devenu facile d'obtenir un design simple pour 
oocheeps
, le projet demande. Voici, en UML, un diagramme de classe qui donne une vued'ensemble :2 / 3

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->