Voici les projets que j'ai réalisé dans le cadre de la fac.
La note symbolise d'une part si le projet est terminé (c'est à dire si il marche) et d'autre part si le sujet a été partiellement ou complètement traité (voire s'il y a eu des 'bonus' supplémentaires). La note ne représente en rien la documentation.

Ha oui, j'allais oublié: coté copy right, vous pouvez en faire ce que bon vous semble... sauf pour une utilisation commerciale ;-) (lol)

 

Licence EEA

Informatique

Projet réalisé en C++ / GTK+.
Implémente le jeu Gomuku (sorte de morpion évolué). Le but du projet était de mettre au point une sorte d'intelligence artificielle avec un algorithme imposé. A cela, j'ai rajouté une interface graphique en GTK+.
La documentation est plutôt bien faite.

Télécharger (70 ko)

 

Licence informatique

Programmation et algorithmique

Projet réalisé en Java.
Implémente un système de gestion de comptes client. Le but du projet était d'implémenter en java des algorithmes de tri vus en algo. A cela, j'ai rajouté une interface graphique également en Java.
Le projet a été décomposéen deux parties. La première n'a quasiment aucun intérêt. La deuxième implémente plusieurs algorithmes de tri dont les B-arbres (principe plus général que les arbre 2-3-4 demandés). Cette dernière possède aussi une interface graphique.
La documentation est plutôt bien faite.

Télécharger (980 ko)

Système I

Projet réalisé en C.
Implémente un système de gestion de fichiers "à la Unix". Le projet marche et respect bien l'esprit du sujet. Aucune fioriture supplémentaires.
La documentation n'est pas trop mal faite.

Télécharger (71 ko)

Bases de données

Projet réalisé en SQL / PHP / HTML.
Le but de ce projet est de réaliser un jeu de rôle ayant comme moteur une base de données implémentée sous PostgreSQL et comme interface graphique du code HTML. Le lien entre les deux est assuré par du code PHP. Le jeu marche bien. Bonne jouabilité même si on se lasse vite (mais les bases sont là pour faire quelque chose d'intéressant). Interface assez agréable mais sans animation.
La documentation est plutôt bien faite.

Télécharger avec doc (4961 ko) Télécharger sans doc (355 ko)

Programmation 2

Projet réalisé en Caml.
Finit d'implémenter un compilateur miniJava (Java simplifié). Le projet consiste juste à terminer le typeur. Tout ce qui était demandé à été fait mais rien de plus (il reste plusieurs problèmes de typage (dûs aux sources initiales) à régler).
La documentation inexistante: pas de compte rendu, seulement des tests (pour mettre en évidence les problèmes restants à traiter). Pour comprendre le projet, lisez le sujet.

Télécharger (176 ko)

Système II

Projet réalisé en C.
Implémente un système de gestion de processus sur une machine virtuelle par simulation au-dessus d'un système Unix. Faute de temps (merci ceux qui ont participé au projet avec moi), le projet n'est pas fini. Toutes les fonctions bas niveau sont faites et la plupart sont débuggées mais les fonctions haut niveau (notamment l'interface utilisateur) brillent par leur absence. Les bases sont bonnes (elles respectent bien l'esprit Unix) mais il faut terminer le projet.
La documentation est en plusieurs morceaux : un fichier word pour décrire les principes de la gestion des processus et un ensemble de pages HTML (ou un fichier rtf) pour décrire les fonctions implémentées.

Télécharger (392 ko)

 

Maîtrise informatique

Linguistique

Projet réalisé en C.
Implémente un analyseur syntaxique. Le travail demandé a été fait et marche en commettant un taux d'erreurs raisonnable. J'ai commencé une amélioration de cet analyseur syntaxique mais elle n'est pas finie (il faut finir de la débugger (4 ou 5 heures de travail)).
Aucune documentation. Si vous en avez besoin dites le moi, ça m'aidera à me décider à la scanner (le sujet qui fait très bien office de documentation est sur papier).

Télécharger (585 ko)

Réseaux

Projet réalisé en SQL / PHP / HTML / Java.
Implémente un robot de recherche web de type Google simplié. La base de données est bien faite même si elle présente quelques répétitions. Elle a été reprise et améliorée dans la projet de base de données déductives. Le moteur de recherche en Java marche à peu pret mais est largement améliorable (le fonctionnement multitâche laisse à désirer, la gestion des pages parcourues et à parcourir est parfois étonnante).
Pas de documentation qui explique le projet dans sa globalité, seulement pour expliquer chaque fonction individuellement.

Télécharger (997 ko)

Bases de données déductives

Projet réalisé en Prolog / SQL / HTML / Java.
Le sujet de ce projet était libre. La seule contrainte était qu'il devait implémenter une BD relative, puis étendre celle-ci pour en faire une BD déductive et enfin montrer la supériorité de cette dernière. Pour cela, nous avons reprise le projet Réseaux en améliorant la BD déjà faite et en l'étendant vers une BDD. Le moteur de recherche a été aussi légèrement amélioré mais ne marche pas beaucoup mieux; cependant cela n'a pas d'importance puisque ce n'est pas le but du projet.
La documentation est très bien faite puisque c'était le principal objectif du projet. Elle est particulièrement pénible à lire (imaginez alors ce que ça a été de l'écrire...) mais elle répond particulièrement bien à ce qu'attendait le prof.

Télécharger (1573 ko)

Intelligence artificielle

Projet réalisé en OCaml.
Implémente un générateur de programmes permettant à un robot de se déplacer dans une pièce en longeant les murs. Cette génération se fait via un algorithme génétique. Le générateur ne trouve pas de programme à tous les coups mais la plupart du temps. Afin d'optimiser la vitesse de génération, certains choix d'implémentation ont été fait et il n'est pas possible actuellement de disposer des objets solide au milieu de la pièce. Le générateur peut donc être amélioré.
La documentation est plutôt bien faite (et assez concise pour une fois).

Télécharger (889 ko)

Infographie

Projet réalisé en C.
Implémente un moteur 3D. Le projet est tout juste commencé et très loin d'être terminé. Seuls quelques algorithmes ont été implémentés.
Aucune documentation mais les fonctions sont assez bien commentées.

Télécharger (19 ko)