Teaching - 2i002 - (TME: sujets)


2i002 : Introduction à la programmation Objet

Pour éditer : cliquer ici

Proposition: pouvez-vous noter les exercices que vous faites par séance pour pouvoir améliorer le poly pour l'an prochain. Le but est double:

  • identifier les exercices inutiles pour les supprimer
  • identifier certains manques à combler

Semaine 1 :

Exos

1: premier pg 2: Planète 3: Se présenter 4: Evaluation (et priorité) 5: eval et affichage 6: Alphabet 7: cst et conv 8: priorité 9 variables 10-> 13 pour le TME

Propositions TD:

  • ajout parcours type
  • ajout de questions/exo sur les permissions
  • supprimer 7.5 et 7.6
  • ajout d'un exo sur les boucles + instructions break et continue

Cours:

  • organisation semestre
  • S7, S17: suppression de static
  • suppression des messages d'erreur (?)
  • accessibilité (public private) + syntaxe de manipulation des objets

  • [Vincent] TD: 1, 2, 4, 5, 6, (7), 3 (début) TME: intro classique
  • [Sylvain] TD: 1, 4, 5, 7, 8, 2 TME : 10, 11, 12, 13
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : 1,2,3, TME : 10, 11, 12, 13
  • [Nataliya] TD: 1, 2, 3, 4, 5, 7 TME : 10, 11, 12, 13

Remarques (<2015):

  • [V] je propose les exercices 14 et 16 à ceux qui ont des problèmes de syntaxe
  • [V] retirer les questions de codage du 7
    • [Syl] Tout à fait d'accord, je suis même d'avis de ne conserver que la question 7.2
  • [V] ajouter un exo sur les autorisations d'accès?
  • [Syl] Exos 8 et 9 a supprimer absolument
  • [Syl] changement de l'ordre des exos pour aller petit à petit de la syntaxe vers l'objet : 1 ; 4 ; 5 ; 7 ; 2 ; 3

Semaine 2 :

Exo traités

17 bouteille 18 adresse web 19 salutation 20 course de relais 21 classe triangle (composition)

Propositions

  • Dans l'exercice 17 ajouter une référence sur la même instance
  • Ajouter un exercice sur la classe vecteur + opération sur deux vecteurs et reflexion sur les signatures de méthode
  • Ajouter l'exercice sur le logo (si faisable sur feuille...)
  • Ajouter un exercice sur le nullpointerexception (ou question dans le 21) + modification d'un objet avec plusieurs références, représentation mémoire sur le triangle

Cours

  • Vidéos
    • Cycle de vie des objets et logique de blocs (1 seule vidéo ?)
    • distinction type de base, objet. Représentation mémoire des objets, vocabulaire instance/référence (nullpointerexception)
    • Composition et représentation mémoire d'un objet composé
    • Surcharges des méthodes et logique de sélection
    • Wrapper et classe String
    • suppression des expressions, ++, --
  • quelle forme pour les boucles?? Fascicule, vidéo... Idéalement entre C1 et C2 pour arriver avant la séance 1 de TD
  • Tableau déplacement vers cours 3
  • exos sur les boucles, les priorités (= révision semaine 1) + création d'objet composés (=triangles, vecteurs...)

  • [Vincent] TD : 17, 21, Q5 (+ début syntaxe tableau), TME: 20 + exo perso LOGO
  • [Sylvain] TD : 3, 17, 21 TME : 13 (fin), 19, 20
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : Quizz 2, 3, Exo 17, TME : 20, 18
  • [Nataliya] TD: Quizz Theme 1, 17, 18, 19, TME : 20

Remarques:

  • [Syl] Rallonger 21 en travaillant sur représentation mémoire (changement d'un point puis affichage, etc...)
  • [V] Ajout d'un exo de TME sur le LOGO

Semaine 3 :

Exo traités

  • RAS

Propositions

Cours

  • Vidéos
    • syntaxe et représentation mémoire des tableaux, tableaux sur les objets
    • ArrayList
    • Polymorphisme (?), sélection de méthodes et erreurs de compilation

  • [Vincent] TD 23 24 + théorie sur les tableaux asymétriques (=début 24) TME jeu de la vie 26
  • [Sylvain] TD 22, 28 TME 25, 26
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : Quizz 4, 5, 7 TME 22, 23
  • [Nataliya] Quizz Tableau, 22, 23, TME: 24, 26

Remarques:

  • [V] Je commence à parler du pointeur null, mais il n'y a pas d'exo
  • [V] 22.6 equals => ==
  • [V] Ajout de question dans le jeu de la vie
  • [Syl] Exo 28 => Pourquoi partir au debut sur classe Truc avec AttrMachin que directement parler de Voiture et de Point ? A mon avis ça clarifierait pas mal de ne pas les embrouiller avec ce cgt de noms de classes au milieu de l'exo... Par ailleurs, je pense qu'il trouverait plus sa place au chapitre d'après, après l'exo 30.
  • [Syl] Pas fait l'exo Pile mais j'aurais dû

Semaine 4 :

Exo traités

30 Pion (semaine 3) 31 Feu 32 Mariage 33 Tracteur 34 Schtroumpf 35 Course équipe

Propositions

  • Ajout exo sorcières?
  • Exo 30 Pion: questions sur l'égalité référentielle/structurelle
  • Ex 35 Equipe : passer à une gestion tableau
  • Exo 34 : donner le main
  • Ajout d'un exercice basé sur des spécifications ?

Cours

  • Vidéo
    • static (syntaxe, signification, nouvelles versions de méthodes) + ajout de la signification de final = constante

  • [Vincent] TD 30, 31 TME 33, 32 (ou jeu des sorcières)
  • [Sylvain] TD 30, 32 (un des meilleurs exos du poly) et 33 TME 34 et 35
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : Quizz 6, 9, Exo 30, 31 + Interro 20 minutes TME : 33, 34
  • [Nataliya] TD: Quizz Instanciation, 30, 31, 32 TME: 33, 34

Remarques:

  • [Syl] Exo 31 à supprimer, pas d'intérêt selon moi, on perd du temps pour rien
  • [Syl] Passer par un tableau dans l'exo 35 et surtout par une methode recruterCoureur plutôt qu'un constructeur d'équipe qui crée des coureurs, ce qui ne veut rien dire et embrouille beaucoup les etudiants
  • [Syl] Dans l'exo 34, Je pense que ça clarifierait pas mal de leur donner le main dès le début (plutôt que de leur demander à la question 3), ça leur permet d'avoir une idée plus précise de qui doit etre fait (sinon ils se mettent tous à créer les pièces dans les construteurs plutôt que de les passer en paramètre).
  • [Syl] D'une manière générale, le poly gagnerait à contenir plus d'exos où on leur donne un main auquel ils doivent se conformer (quitte à moins les guider avec de multiples questions). Ca les amène à chercher à créer des programmes cohérents.
  • [V] Ajouter des questions sur equals dans l'exo 30

Semaine 5 :

Exo traités

Propositions

  • 46, 47 à passer 2 séances plus loin
  • Ajouter exo sur stockage d'objets créés dans un tableau statique de leur classe
  • [Syl] Ajouter exo sur le Singleton
  • factory & constructeurs privés

Cours


  • [Vincent] TD 36, 37, 38, 40, 42, 44 TME: immatriculation + moutons
  • [Sylvain] TD Contrôle 45 min + Correction contrôle 45 min (consiste à écrire une sorte de classe ArrayList d'entiers). TME 38 et 39
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] Quizz 10, Exo 36, 37 TME : 38, 39
  • [Nataliya] TD: 36, 37, 39 TD: 38

Remarques:

  • [Syl] Supprimer exos 36 (un peu ridicule), 40 (sans intérêt) et 42 (pareil que 43 mais en moins bien)
  • [Syl] Ajouter exo sur stockage d'objets créés dans un tableau statique de leur classe
  • [Syl] Ajouter exo sur le Singleton
  • [Syl] Que font ici les exos 46 et 47 correspondant à de l'hértage ?
  • [Syl] Bizarre l'histoire du constructeur privé dans l'exo 43, je simplifierais bien en virant ce constructeur...
  • [Syl] Exo 44 : Tout est demandé en static, du coup pas vraiment l'occaz de leur montrer la diff avec non statique. Prevoir une ou deux questions où on demande les mêmes méthodes mais en non static.
  • [Syl] Même chose pour 45 : Demander quelque chose de non static, par exemple methode pour changer une lettre d'un mot déjà construit
  • [V] Passer le 47 dans la séance d'après (même 2 séances plus loin!)

Semaine 6 :

Exo traités

Propositions

Cours

  • [Vincent] 48, 49, 50, 47, 52 TME Animaux dans le pré
  • [Sylvain] 37, 43, Singleton, Stockage d'objets créés dans un tableau statique, 48 TME 49 (orchestre) + 54 (menagerie) pour les rapides
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] Quizz 11 + Exo 48 TME Exo 49
  • [Nataliya] TD: Interrogation (15 min), 48, 49, 50 TME: 51

Remarques:

  • [Rujing] Il vaut mieux expliquer Exo 49 sans utiliser la classe abstraite.
  • [Sab] Manque un (ou des) exercice(s) simple(s) d'héritage sans abstract pour le TME (du même style que Exo 49 Orchestre)
  • [Syl] Pas très malin de ma part d'avoir à peine introduit l'heritage en TD puis de faire un TME là dessus (pas mal courru en TME)
  • [Syl] L'exercice 51 (concours) merite d'être fait en TME mais il bénéficierait beaucoup de certaines clarifications + ajouts de difficultés. Je propose d'y ajouter les indications suivantes :
    • Les personnes peuvent participer à plusieurs concours et on souhaite conserver une historique des participations des différentes personnes aux concours (implique la création d'une classe BulletinReponse ou un truc comme ça).
    • Seule la première question d'un concours peut varier, la deuxième étant toujours "Combien de personnes répondront correctement à la question ?"

Semaine 7 :

Exo traités

Propositions

Cours

  • [Vincent] Interro/Correction + 53 TME Robots Pollueurs (56)
  • [Sylvain] Retour sur 49 fait en TME puis 50,46,47, 55 TME 56 (robots pollueurs)
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] Exo 50, 53 + Interro 20 minutes TME 54, 55
  • [Nataliya] TD: 53, 54 TME: 55, 56

Remarques:

  • [V] L'exercice sur les robots pollueurs nécessite une grosse mise à jour: les attributs ne sont pas sécurisés et les étudiants peuvent faire n'importe quoi en obtenant le bon résultat+respectant l'énoncé!!!
    • attribut privés + accesseurs
    • fct abstract pour le déplacement
    • deplacement tour par tour pour les robots
  • [V] Il y a une version nettement améliorée des robots pollueurs sur le site de N. Baskiotis
  • [Syl] Exo 50 : ajouter une question avec une autre methode que toString (par exemple arroser) pour indiquer que si la methode n'est pas dispo pour le type du pointeur ni dans les classes parentes, on a une erreur à la compil. On peut introduire alors l'intérêt de l'abstract ici en soulignant que ces erreurs de compil peuvent être levées en définissant des methodes abstraites en soulignant ce que cela implique pour les classes filles.

Semaine 8 :

Exo traités

Propositions

Cours

  • [Vincent] 57, 58, 46, 47, 60 TME 61, 62, 63
  • [Sylvain] 57 , 58 , 59 ,60 TME 61, 62, 63
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] Quizz 12, Exo 57, Quizz 15 TME 63, 60
  • [Nataliya] TD: 57, 58, 59, 63 TME: 60

Remarques:

  • [Syl] Exo 59 peut ptet embrouiller les étudiants. On ne se pose vraiment pas souvent ce genre de question...
  • [Syl] Exo 60 Ajout d'une conso au 100 km pour les vehicules à moteur => implique de redéfinir la méthode rouler pour qu'elle consomme de l'essence (et ne parcourt pas la totalité de la distance si pas assez d'essence).
  • [Syl] Exo 60 modif transporter de Velo pour pouvoir mettre à jour la distance parcourue (histoire de donner un peu de sens à tout ça et rester cohérent...)
  • [V] 46, 47 à repositionner dans le poly
  • [V] 61, 62: supprimer la notion de package dans ces exos.

Semaine 9 :

Exo traités

Propositions

Cours

  • [Vincent] TD: 65 66 68 TME Solo (Robots pollueurs v2 + pile)
  • [Sylvain] TD: 65,66 et 68 TME : TME solo de 1h45. Tournoi Jeu des allumettes avec differents types de joueurs
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : Quizz 14, 58, 59, 65 Quizz 8 TME : TME solo (Garage automobile)
  • [Nataliya] TD: 64, Quizz TME solo (Bibliotheque)

Remarques:

Semaine 10 :

Exo traités

Propositions

Cours

  • [Vincent] TD : Controle 45 min, 69 TME Exo 64 (Aquarium)
  • [Sylvain] TD : Controle 50 min sur jeu d'echecs avec exceptions, TME : Exo 64 (Aquarium)
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina] TD : 66, TME : 69, 70
  • [Nataliya] TD: 65, 66, 67, TME: 69, 70

Remarques:

Semaine 11 :

Exo traités

Propositions

Cours

  • [Vincent] TD: 71, 73, 76 TME : dessin + image
  • [Sylvain] TD : 71, 72, 74 (questions 1 et 2). TME : 75 (production compte rendu TME)
  • [Nico B]
  • [Alain]
  • [Rujing]
  • [Thibaut]
  • [Sabrina]
  • [Nataliya] TD: 71, 73, 74, 76 TME: 72

Remarques: