# Travail à rendre Vous devez rendre le code et un fichier lisezMoi. La date limite est fixée à vendredi 8 avril à 18H. # Rendre le code Vous devez rendre les exercices que vous avez programmés sur le [Moodle](https://moodlesciences.univ-brest.fr/moodle/course/view.php?id=673). Vous ne rendez pas ce que vous n'avez pas programmé. ## Présentation du code Votre code doit être formaté correctement (Voir par exemple [Formatage du code sous eclipse](https://www.ipgirl.com/12021/comment-formater-tous-les-fichiers-java-dans-un-projet-eclipse-en-meme-temps.html)) Il doit être commenté, mais sans commentaire inutile comme par exemple: ```java // retourne expr Expr getExpr() { return expr; } ``` Ce que j'entend par commentaire utile : - classe : sont intention, à quoi elle sert, les variables d'instances, les dépendances avec les autres classes - fonction : si necessaire, précision ce qu'elle fait et le sens des arguments - algorithmes : documentez les algorithmes que vous jugez complexes ou très importants Voici deux billets interessants sur les commentaires: [1](https://www.developpez.com/actu/194194/Commenter-son-code-pourquoi-quand-et-comment-un-excellent-tutoriel-par-benbout/), [2](https://www.developpez.com/actu/150066/Programmation-quand-faut-il-commenter-son-code-Google-s-invite-dans-le-debat-et-montre-que-les-commentaires-peuvent-tres-souvent-etre-evites/). ## Facilitez la vie du lecteur Vous devez mettre en valeur vos qualités de développeur et ne pas donner l'impression de masquer des informations. N'oubliez pas qu'un développement n'est jamais parfait. Il y a toujours des amméliorations possibles. Les bogues et les disfonctionnements sont forcément présents. Tirez en partie. Avoir un disfonctionnement ou avoir fait des choix de conception qui s'avèrent problématiques n'est pas forcément négatif. C'est le cas si vous montrez que vous en êtes conscient et encore mieux si vous êtes capable d'une auto-relecture constructive. Donc : - **il faut** ajoutez des classes exemples commentées avec un *main* directement exécutable. Mettez en pour montrer tout ce que votre code est capable de faire; - vous pouvez aussi programmer des tests *junit*; ## Le fichier lisezMoi Il est formaté en [Markdown](https://www.markdownguide.org/getting-started/) (comme ce document). Il contient : - le nom des auteurs; - la liste de ce qui a été rendu avec une petite description succincte; - des éléments techniques pour la comprehension de vos solutions et qu'il est difficile de trouver par la seule lecture des commentaires; - un bilan critique sur vos choix de conception, de programmation et les solutions que maintenant vous auriez choisies. - ajoutez ce que vous n'avez pas pu faire ## Comment rendre son travail Le fichier lisezMoi est rendu avec les exercices dans le workspace sauvegardé sur le [Moodle](https://moodlesciences.univ-brest.fr/moodle/course/view.php?id=673). Pour ce qui est du code, rendez les projets eclipse **compressés en .zip**: - C'est obligatoirement en zip !!! - pas de format exotiques, comme le *.rar* sans les différents fichiers de configuration (les fichiers dont le nom commence par un '.' comme par exemple *.classpath*, *.settings*, *.project*... - sans le répertoire bin Le mieux est d'utiliser la fonctionalité d'export de projet sous eclipse ([Export sous eclipse](https://cs108.epfl.ch/archive/15/eclipse_export.html)). Acant de livrer sur le moodle, Vérifiez bien que vous pouvez ré-importer ce que vous livrez à partir d'un workspace vierge.