Projet C : Différence entre versions
De Ensiwiki
(→Déroulement du projet) |
|||
Ligne 11 : | Ligne 11 : | ||
== Déroulement du projet == | == Déroulement du projet == | ||
− | * Une partie "Formation au langage C" les 2, 3 | + | * Une partie "Formation au langage C" : 18h les 1, 2, 3 février, puis 6h dans le semestre, puis 6h 23-24 mai, et examen le 25 mai. |
Voir la page dédiée : [[Introduction au langage C]] | Voir la page dédiée : [[Introduction au langage C]] | ||
* Une partie "Projet" en trinôme en libre service avec : | * Une partie "Projet" en trinôme en libre service avec : | ||
− | |||
<!-- | <!-- | ||
+ | ** Un mail de présentation des sujets mi-mai pour le choix des sujets | ||
** l'amphi de présentation détaillée des sujets et distribution des polycopiés, le 28 mai à 14h00 | ** l'amphi de présentation détaillée des sujets et distribution des polycopiés, le 28 mai à 14h00 | ||
*** amphi D : JPEG | *** amphi D : JPEG | ||
Ligne 22 : | Ligne 22 : | ||
** des séances encadrées presque tous les jours sur les créneaux 8h45-12h45, 14h-18h, jusqu'au mercredi 10 juin matin compris (pas de créneau encadré le 10 juin après-midi) | ** des séances encadrées presque tous les jours sur les créneaux 8h45-12h45, 14h-18h, jusqu'au mercredi 10 juin matin compris (pas de créneau encadré le 10 juin après-midi) | ||
** les soutenances les 11 juin (après-midi) et 12 juin (matin) | ** les soutenances les 11 juin (après-midi) et 12 juin (matin) | ||
− | --> | + | --> |
+ | |||
== Evaluation du projet == | == Evaluation du projet == | ||
=== Soutenances: informations pratiques === | === Soutenances: informations pratiques === |
Version du 2 février 2016 à 07:32

Sommaire
Responsables du module
- Organisation générale : François Broquedis et Matthieu Chabanas
- Préparation : Olivier Muller
- Responsable sujets:
- Projet MIPS : Matthieu Chabanas
- Projet IG : Francois Bérard
Déroulement du projet
- Une partie "Formation au langage C" : 18h les 1, 2, 3 février, puis 6h dans le semestre, puis 6h 23-24 mai, et examen le 25 mai.
Voir la page dédiée : Introduction au langage C
- Une partie "Projet" en trinôme en libre service avec :
Evaluation du projet
Soutenances: informations pratiques
Les informations pratiques concernant les soutenances seront publiées ultérieurement.
Conseils et consignes pour le rendu
Pour le rendu sur TEIDE, il est impératif que :
- votre code respecte les directives de codage imposées (voir aussi l'introduction du polycopié).
- votre code compile, simplement, avec la commande
make
,
- votre code marche sur telesun,
- votre code compile sans warning(s) problématiques (l'option -Werror de GCC peut vous aider), et s'exécute effectivement correctement (là, c'est valgrind qui vous aidera),
- vous fournissiez, en plus de vos sources et Makefile, les fichiers de tests que vous avez écrits/créés.
- Si vos fichiers de tests sont trop volumineux (l'archive rendu doit faire moins de 2 Mo), ne conservez que les plus significatifs. Si vous le souhaitez, vous pourrez montrer les autres le jour de la soutenance.
- Votre archive est propre (pas de .git, pas de .o inutile...)
La soutenance se fera impérativement sur le code rendu sur TEIDE. Prévoyez donc un peu de temps avant le rendu pour faire les tests finaux (préparez l'archive à rendre, extrayez-là dans un répertoire, testez-là, et ne la rendez qu'après avoir vérifié qu'elle est effectivement complète et correcte).
Conseils et consignes pour la soutenance
- Relisez-bien le poly
- Préparez correctement votre présentation (10mn). Il n'est pas nécessaire de préparer des transparents, mais la présentation doit être construite, non improvisée et appuyée par de petites démos.
- Mettez bien en évidence les points forts de votre projet (fonctionnalités ajoutées par rapport au sujet, qualité du code, tests effectués ...)
- Gérez votre temps. Les soutenances s'enchainent et nous ne pourrons pas déborder.
- Partagez équitablement le temps de parole.
Ressources pour le projet
Foires aux Questions
Se référer à
Outils intéressants
Utilisation de votre éditeur pour le C
Outils pour (bien) développer en C
- Valgrind : trouver les problèmes liés à la gestion mémoire à l'exécution d'un programme.
- GDB : un débogueur, pour exécuter pas-à-pas un programme et comprendre son fonctionnement ou non-fonctionnement.
- Makefile : pour compiler rapidement un projet.
- GCC : Le compilateur utilisé à l'Ensimag. Regardez les options de compilations, certaines (comme -Wall) peuvent vous aider à écrire du code de meilleure qualité.
Pour organiser votre travail en groupe
- Travailler à distance
- Travailler à plusieurs (attention, nous vous demandons de ne pas donner l'accès à vos fichiers à toute la promo !)
Styles de codage imposés
- Le Coding Style du noyau Linux (pdf : Linux-coding-style.pdf), utilisés par bien d'autres projets. Pour des exemples, regardez n'importe quel fichier source du noyau (sans forcément comprendre le fond, on peut apprécier la forme).
- Exemple coding style utilisé en projet C