Teaching - 2i002 - (TME: sujets)


2i002 : Introduction à la programmation Objet

Pour éditer : cliquer ici

Chapitre 1 :

  • [S] changement de l'ordre des exos pour aller petit à petit de la syntaxe vers l'objet : 1 ; 4 ; 5 ; 7 ; 8 ; 2 ; 3
 [V] pas d'importance pour moi 

PAS DE MODIF

  • [S] Suppression de l'exo 9 qui est vraiment galère et n'apporte pas grand chose à mon sens
 [V] je suis plutot pour le garder, ils peuvent s'entrainer dessus

PAS DE MODIF

  • [S] Q3.5 => "Peut-on récupérer l'âge de Pierre à partir d'une classe externe ?" ("connaître l'âge de Pierre" la reponse est oui car on peut l'avoir par toString())
 [V] je suis plutot d'accord avec la solution existante: tu pinailles

PAS DE MODIF

  • [S] Q7.7 à supprimer car nécessite de passer du temps à expliquer ce qu'est une méthode statique (prématuré selon moi)
 [V] OK pour moi

MODIF EFFECTUEE

Chapitre 2 :

  • [S] Q21.1 Ptet demander un setPosX, setPosY puis un deplaceToi relatif à sa position actuelle plutôt qu'un simple modifieur
 [V] pas trop compris...
  • [S] Q21.2 "et les affiche" => "affiche leurs coordonnées" (beaucoup d'étudiants cherchaient à les positionner graphiquement dans une grille)
 [V] OK pour moi

MODIF EFFECTUEE

  • [V] 21: Ajouter des questions sur la représentation mémoire dans la composition d'objet (21.4)

Pas de modif, on verra dans les séances suivantes

Chapitre 3 :

  • [V] 23: le constructeur d'histogramme qui crée des notes me semble aberrant => Créons un tableau de notes à donner lors de la création de l'histogramme!

MODIFIEE

  • [V] 25: ajouter des questions sur la représentation mémoire

on verra plus tard

  • [S] Q.25.1 "un constructeur ... qui crée une équipe, puis y ajoute..." => "un constructeur qui crée une équipe d'un nom et d'une taille donnée ne contenant pour l'instant aucun villageois". (pour les raisons que j'ai évoqué lors de la reunion, créer des villageaois de manière aléatoire ici me parait problématique... On ne crée pas les villageois lorsque l'on crée l'equipe, on les embauche par la suite)
 [V] OK pour la modif

DONE

  • [V] 28 (Awele): personnellement, je n'ai jamais eu le temps de l'attaquer... On pourrait le bouger dans une séance plus loin en ajoutant un joueur qui joue soit au clavier, soit tout seul avec un alpha/beta simplifié

Je ferai sans doute un TME la dessus cette année => propal 2014...

AJOUT EXO CLONAGE DE TABLEAU... EXO MOYEN MAIS PAS SI MAL...

Chapitre 4 :

  • [S] Suppresion exo 30 sur les feux tricolores
 [V] Non, je l'ai utilisé l'an dernier...
  • [V] 31 Bug: il faut impérativement que la méthode de tirage soit static

DONE

  • [S] Exo 33 : Inverser les deux premières questions : cela permet de leur indiquer que les pièces ne sont pas crées dans le constructeur de machine (toujours le même problème) mais qu'on doit les passer en paramètres

pas bien compris, du coup je n'ai rien fait

  • [S] Q34.5 : "un constructeur Equipe(String v) qui crée un equipe de 4 coureurs" => "Ecrire un constructeur d'equipe qui une equipe de 4 coureurs pour une ville donnée" (a eux de definir les paramètres... qui d'ailleurs doivent inclure les quatre coureurs concernés)
 [V] OK, pourquoi pas...

pas fait

Chapitre 5 :

  • [S] Exo 35 a supprimer ou à revoir
 [V] Ca fait un rappel de cours rapide, c'est pas plus mal...

rien fait

  • [S] Supprimer les question Q36.3 et Q36.4 (déjà traitées dans Q36.5)
 [V] OK pour moi

DONE

  • [V] Je voudrais changer le nom de la classe. Je trouve que Numero est ambigu... Je l'appellerai plutot MonObjet

DONE

  • [S] Suppression exo 39 (lettre aléatoire)
 [V] je trouve que c'est une bonne introduction aux classes outils... Je suis plutot pour le garder.

rien fait

  • [S] Ajout d'un exo sur le stockage des objets créés dans un tableau statique
 [V] je ne suis pas sur de comprendre

rien fait

  • [S] L'année dernière j'avais ajouté un exo Ecrire une classe Singleton, ça avait pas mal marché
 [V] OK pour moi

rien fait

  • [S] Suppression exo 41 addition vecteur (traité en 42)
 [V] on peut le passer en semaine 2 sans la partie static

rien fait, il est qd même différent du suivant

  • [S] Q42.1 : je supprimerais bien le truc du constructeur private qui brouille le discours (c'est pas vraiment le thème ici)
 [V] on n'en voit nulle part ailleurs... C'est pas si mal

rien fait

  • [S] Exo 43 : le fait de tout mettre en static n'est pas le mieux pour insister sur les diff entre methodes d'instance et methodes de classe (après un exo comme ça, ils mettent toujours tout en static). Je suis d'avis de ne pas leur dire lesquelles mettre en static et lequelles non, sachant les paramètres passés à la méthode (je serais ptet d'avis de mettre static juste pour memeLongueur, static n'est pas le sujet principal de cet exo).
 [V] moi j'aime bien les classes outils, je trouve que ça simplifie le code des "vrais" objets... 
 Je suis plutot pour garder

rien fait

  • [S] Exo44 : demander une methode non static, par exemple changer une lettre d'un Nom deja construit
 [V] pas sur de bien comprendre... Mais 43 et 44 sont très proches, perso, je n'ai jamais fait le 44

rien fait

AJOUT EXO SUR LA SELECTION DE METHODE

AJOUT EXO SUR UNE REDEFINITION PIEGEUSE

Chapitre 6 :

  • [S] Exo 47 : Comme dit en reunion, ajouter une question avec une autre methode que toString 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 (mais c'est ptet prématuré, je ne sais pas ? )
 [V] j'ai ajouté un exo (cf dropbox) où le cas se pose

exo ajouté en chapitre 5 (mais on peut le traiter n'importe où)

  • [S] Suppresion exo 48 (Carrefour)
 [V] 100% d'accord

DONE

  • [S] Suppresion exo 50 (DistriBanque)
 [V] 100% d'accord

DONE

  • [V] Je n'aime pas non plus le 49... Pas d'intérêt pour l'héritage + trop long pour le TD
  • [S] 49 Clarifier concours qui est un peu ambigü mais peut être assez intéressant si on y ajoute 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 ?"

On le supprimera l'an prochain !

  • [S] Ce chapitre devient très petit... Peut-être qu'on peut regrouper 6 et 7 en un seul chapitre ?
 [V] Je propose quelques nouveaux exo... 
 J'ai aussi des exo de TME sur mon site web que je peux ajouter dans les énoncés

AJOUT EXO sur final

je n'ai pas ajouté d'exo de TME => on verra en 2014

Chapitre 7 :

  • [V] Ex 51 (figure/shape): ajouter une question pour la construction du main:
    • tableau recevant plusieurs type de Shape
    • remplissage
    • calcul de l'aire total

DONE

  • [V] Ajouter un exercice avec : une classe abstraite possédant une méthode concrète faisant appel à une méthode abstraite (la structure est marrante)

pas fait

  • [V] ex 54 (robot pollueur):
    • il y a une faute dans dans la correction des 54.5 et 54.6: redéfinition dans la classe fille de la colonne qui n'existe que dans la classe mère + initialisation complètement bizarre depuis la classe fille...
    • Q 54.7 mal posée et très dure à comprendre

DONE

Chapitre 8 :

  • [V] suppression de l'ex 57 (attribut public + redef attribut): ce cas ne doit simplement pas arriver, pas la peine de comprendre comment ça marche!
    • j'ai proposé des ex. sur les redéfinitions complexes

DONE

  • [V] correction du 56.2 : il faut vraiment tester le type des classes... Mais instanceof peut amener à des problèmes dans les test entre une classe et une classe fille, normalemnet, il faut utiliser getClass. Je peux refaire la correction

DONE

  • [V] possible ajout d'exercice sur la définition d'un tableau à taille variable + comparaison de perf avec ArrayList

pas fait

Chapitre 9 :

  • il est un peut vide pour l'instant... Il faudrait mieux définir la séance pour être sur d'avoir le temps de traiter les flux en S11

Chapitre 10 :

  • [V] Suppression de 68 (codage pas très propre des personnes), exercice avec peu d'intérêt

DONE

  • [V] Suppression de 69: long + pas d'exception alors que c'est le thème

DONE