YoVDO

Projet de programmation (en Java)

Offered By: École Polytechnique Fédérale de Lausanne via Coursera

Tags

Java Courses Project Management Courses Object-Oriented Design Courses

Course Description

Overview

Ce « cours » n'est pas un cours au sens strict du terme mais un projet. La pratique étant essentielle dans l'apprentissage de programmation, nous avons conçu de cours-projet pour vous permettre de consolider vos acquis en programmation Java. Il est décomposé en 14 étapes (sur 7 semaines) dont le but est de vous permettre de mettre en pratique, à grande échelle, les concepts et techniques appris dans nos deux précédents MOOCs (https://www.coursera.org/learn/initiation-programmation-java/ et https://www.coursera.org/learn/programmation-orientee-objet-java/) Les principaux objectifs visés : + d'exposer d'avantage certaines problématiques typiques de conception OO, difficiles à illustrer sur des exercices simples ; + d'introduire par la pratique certaines méthodologies de conception (ce que l'on appelle des patrons de conception) ; + de vous apprendre à mettre en oeuvre une approche incrémentale et des tests progressifs lors de l'élaboration de programmes de plus grande envergure. Ce que vous aurez à faire c'est, étape par étape, de + lire et comprendre la donnée, + comprendre les problématiques de conception sous-jacentes et comment nous vous proposons de les résoudre, + coder votre solution, + et enfin, bien sûr, la soumettre au correcteur automatique. Ainsi progressivement vous développerez tout un projet, en l’occurrence la simulation d'une colonie de fourmis, tout en approfondissant vos connaissances OO.

Syllabus

  • Mise en place et premières classes
    • Prise de connaissance et mise en place du projet ; implémentation des deux premières classes outils.
  • Environnement et nourriture
    • (1) mise en place du « lieu de vie » des futurs animaux et leur fournir de la nourriture ; (2) comprendre la mise en pratique de l'encapsulation (orientée-objet) au travers de « vues » ; (3) utiliser l'interface graphique fournie.
  • Déplacement des animaux
    • Continuer à modéliser les animaux et leur permettre de se déplacer de façon simple, puis ajouter de l'aléatoire dans leur déplacement.
  • Fourmis (1/3)
    • (1) modéliser les fourmis et les fourmilières ; (2) comprendre le concept du « double dispatch ».
  • FOURMIS (2/3)
    • (1) implémenter un comportement propre aux fourmis ouvrières ; (2) modéliser les phéromones puis commencer à les intégrer au projet.
  • Fourmis (3/3)
    • (1) mettre en place les stratégies spécifiques de déplacement pour les animaux ; (2) finaliser l'intégration des phéromones ; (3) puis mettre en œuvre le déplacement sensoriel.
  • Termites et combats
    • (1) compléter la modélisation des termites ; (2) permettre aux animaux de reconnaître leurs ennemis ; (3) simuler les mécanismes de prédation et de combat.

Taught by

Jean-Cédric Chappelier and Jamila Sam

Tags

Related Courses

Algorithms, Part I
Princeton University via Coursera
Introduction à la programmation orientée objet (en Java)
École Polytechnique Fédérale de Lausanne via Coursera
MongoDB for Java Developers
MongoDB University
Initiation à la programmation (en Java)
École Polytechnique Fédérale de Lausanne via Coursera
Intro to Java Programming
San Jose State University via Udacity