Les trois systèmes du cours: Programmation orientée objets

Système d'entrée du cours: Programmation orientée objets

Prendre connaissance des objectifs : Après la formation, l’apprenant est censé maîtriser ces points :

  • S’initier aux concepts orientés objets et leurs intérêts pratiques.
    
  • Comprendre les concepts orientés objets en terme de concept, syntaxe Java et utilisation.
    
  • Comprendre la technique d’héritage et ses intérêts pratiques.
    
  • Comprendre le concept de polymorphisme et ses intérêts pratiques.
    
  • Comprendre et distinguer entre les deux concepts de classes abstraites et interfaces.
    
  • Faire découvrir la notion de gestion des exceptions.
    

Objectifs adaptés aux besoins de l'apprenant?

Non

l'apprenant doit s'orienter en formation en programmation orientée objet avancée

Oui

Passer le pré test : l’apprenant doit passer une épreuve pratique, il doit avoir 80% dans l'évaluation pour réussir ce pré test. ce pré test porte sur:

  • la dérivation de la classe de base dans la quelle l'apprenant fait appel aux attributs et aux méthodes de la classe de base quelques soit leurs modificateurs de visibilité, redéfinit au moins une super méthode pour pouvoir appliquer le concept de polymorphisme dans la classe test.
    
  • l'application du concept de polymorphisme.
    

Pré test réussi?

Oui

L'apprenant dois s'orienter vers la formation programmation orientée objets avancée

Non

Passer le test d’entrée (pré requis) : l’apprenant à ce niveau, doit être évalué sur les pré requis. il doit avoir 50% de la totalité des points. Alors, je propose un problème pratique portant sur :

  •   Définition et saisie d’une structure de données
    
  •   Remplir la liste chaînée (allouer l’espace mémoire nécessaire pour la cellule, le remplir et le raccorder à la liste), la manipiler  et à la fin liberer l'espace alloué
    

Test d'entrée réussi?

Oui

Orientation en formation du cours programmation orientée objets

Non

L'apprenant doit faire une formation en algorithmique et programmation classique

  •   Création d’une liste chainée de cellules de type la structure définie 
    
  •  la définition des concepts de base, l'encapsulation des données, la définition d'une exception, son déclenchement et son traitement.
    

Pré requis: Algorithmique et structures de données 1&2, programmation classique 1&2

Matériels nécessaires: Exposé informel (tableau, data show, transparents, machine équipée de eclipse)

Système d'apprentissage:

Le cours est divisé en 14 séquences structurées linéairement.

Séquence n°1: Limites de la programmation classique et introduction à la programmation orientée objet.

Objectifs spécifiques

  • Dégager  les lacunes de la programmation classique et savoir l’apport de l’orientée objet.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à distance et à la fin de la séquence sous forme d’un QCM autocorrigé pour bien comprendre les limites de l’approche classique et le recours à l’approche objet.
    

Séquence n°2: Terminologies de l’approche orientée objet. (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Connaitre et différencier les principaux termes et concepts liés à l’approche orientée objet.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d’un QCM autocorrigé pour bien comprendre les limites de l’approche classique et le recours à l’approche objet.
    

Séquence n°3: Concepts orientés objet en Java. (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Comprendre les concepts orientés objet en termes de concept, syntaxe Java et utilisation.
    
  • Comprendre le comportement dynamique d’un objet.
    
  • Maîtriser l’instanciation des objets et l’accès aux membres d’un objet.
    

Activité d’apprentissage

L'apprenant exerce une activité d’entrainement/application globale individuelle à distance et à la fin de la séquence sous forme d’un exercice corrigé par le tuteur et portant sur les concepts de l'approche objet: (création d'une classe, déclaration des attributs, définition des méthodes, instanciation des objets)

Séquence n°4: Les classes internes (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Comprendre le concept des classes internes.
    

Activité d’apprentissage

L'apprenant exerce une activité d’entrainement/application globale individuelle à distance et à la fin de la séquence sous forme d’un exercice corrigé par le tuteur et portant sur les classes imbriquées. (accès aux membres de la classe englobante a partir de la classe interne et inversement).

Séquence n°5: Encapsulation et surcharge (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Introduire la notion d’encapsulation et ses intérêts pratiques.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un QCM autocorrigé portant sur les différents modificateurs de visibilité et leurs limites d’accès. 
    

Séquence n°6: Accès aux membres et aux classes (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Comprendre les droits d’accès aux membres et aux classes.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur et portant sur les accesseurs et les modificateurs des attributs inaccessibles en dehors de la classe ou du package.
    

Evaluation

  • IL s'agit d'un devoir surveille pondéré à 20% portant sur les séquences n°1, 2, 3, 4, 5 et 6
    

Séquence n°7: Surcharge des méthodes (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Maîtriser le concept de surcharge des méthodes.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur et portant sur la  surcharge des méthodes .
    

Séquence n°8: L’héritage (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Introduire la notion d’héritage : intérêt et notation.
    
  • Introduire les droits d’accès d’une classe dérivée aux membres de la classe de base.
    
  • Comprendre la construction d’un objet dérivé.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur et portant sur la  dérivation d'une classe de base, la construction d'un objet dérivé et les droits d’accès d'une classe dérivée aux membres de sa super classe.
    

Séquence n°9: Dérivation successive (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Découvrir le concept de dérivations multiples.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur et portant sur la  dérivation successive.
    

Séquence n°10: Redéfinition et surcharge des méthodes. (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Savoir s’en sortir en cas d’utilisation simultanée de redéfinition et surcharge.
    
  • Maîtriser la notion de redéfinition et surcharge des méthodes.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un QCM autocorrigé, composé des portions de code faisant appel à des méthodes redéfinies et surchargées à compiler et à exécuter manuellement.
    

Séquence n°11: Le polymorphisme (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Comprendre le concept de polymorphisme à travers des exemples.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un problème corrigé par le tuteur portant sur la création d'une classe de base et d'une classe dérivée, la création d'un tableau d'instances hétérogène et l'appel des méthodes redéfinies  sur des objets de base et des objets dérivés dont le but est de voire le comportement dynamique d'une méthode redéfinie.
    

Séquence n°12: Conversion implicite et explicite entre les références. (l'apprenant aborde cette séquence, une fois il termine la précédente)

Objectifs spécifiques

  • Comprendre la conversion des arguments en liaison avec le polymorphisme.
    
  • Comprendre la conversion explicite des références en rapport avec le polymorphisme.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un QCM autocorrigé, composé des portions de code de conversion implicite et explicite entre les références à compiler et à exécuter manuellement.
    

Séquence n°13: Les classes abstraites et les interfaces (une interface est une classe abstraite particulaire) (l'apprenant aborde cette séquence, une fois il termine la précédente).

Objectifs spécifiques

  • Introduire la notion de classe abstraite, les règles de définition et l’intérêt pratique.
    
  • Introduire le concept d’interfaces, leurs intérêts pratiques et leurs relations avec l’héritage.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur  portant sur la définition et l'utilisation des classes abstraites ainsi que les interfaces (cas particulier: les classes abstraites)
    

Séquence n°14: Les exceptions (l'apprenant aborde cette séquence, une fois il termine la précédente).

Objectifs spécifiques

  • Introduire la notion d’exception, les règles d’utilisation et de définition des exceptions.
    
  • Distinguer entre les exceptions prédéfinies et les exceptions définies par l’utilisateur.
    

Activité d’apprentissage

  • L'apprenant exerce une activité d’entrainement/application globale à  distance et à la fin de la séquence sous forme d'un exercice corrigé par le tuteur portant sur la définition des exceptions (définies par l'utilisateur), leurs déclenchements et leurs traitements.
    

Evaluation écrite 🖊

IL s'agit d'un test présentiel individuel portant sur les séquences n°1, 2 et 3

Ressources

ressources propriétaires : mon cours en format pdf.

Ressources libres :
• Deitel et Deitel, Programmer en JAVA 4éme edition, Les éditions Reynold Goulet.
• Lemay L, Le programmeur JAVA2, Campus Press.
• Bailly C, Chaline J.F., Ferry H.C & al, Les langages orientés objets, Cepadues éditions.

Durée : 1 semaine (3h)


  • 1h30 tp présentiel
    
  •    1h30 cours à distance 
    

Déroulement de la séquence: la modalité de l’enseignement est hybride et elle consiste à présenter abstraitement des concepts orientés objet pendant la séance du cours à distance et leurs concrétisation en Java (définition, manipulation) sur machine pendant la séance de tp en présentiel. A la fin de la séquence, l’apprenant est demandé de déposer un livrable d’une activité d’apprentissage et de passer un test écrit en présentiel proposés par le tuteur. Le passage à la séquence 4 est automatique.

Acteurs:

  • L’apprenant: l’apprenant doit écouter la démonstration du cours, assister au tp, prendre connaissance de l’activité et de l’évaluation, les lire et s'exercer pour les résoudre et déposer son livrable dans le délai accordé et passer l’évaluation écrite.
    
  • Le tuteur: le tuteur doit présenter le cours à distance, assurer le tp en présentiel puis  il doit, à l’issue de la séquence, proposer l’énoncé de l’activité d’apprentissage sur la plateforme et de l’évaluation écrite, inviter l’apprenant à les lire et à les répondre, aussi  par la suite, il corrige les livrables de l’apprenant.
    

Mode évaluation:

L’activité d’apprentissage est comptabilisée avec les autres activités d’apprentissages dans la note finale avec une pondération 20%.

L’évaluation écrite est pondéré à 10% dans la note finale.

Objectifs opérationnels:

  • L’apprenant doit se familiariser avec l’environnement java.
    
  • L’apprenant doit maîtriser la définition des concepts de base en java.
    
  • L’apprenant doit consolider les compétences concernant la définition et la manipulation des classes et des objets.
    
  • L’apprenant doit réussir les exercices relatifs à l’implémentation d’une classe en Java et maîtriser les exercices relatifs à l’accès aux membres privés. 
    

Livrables:

Un fichier .class contenant l’exécutable de son programme déposé à travers la plateforme.

Un compte rendu écrit remis à la fin de l’évaluation.

Matériel requis :

Ressources :

  • Deitel et Deitel, Programmer en JAVA 4ème édition, Les éditions Reynold Goulet.
    
  • Lemay L, Le programmeur JAVA2, Campus Press.
    
  • Bailly C, Chaline J.F., Ferry H.C & al, Les langages orientés objets, Cepadues éditions.
    
  • http://www.fao.org/docrep/015/i2516f/i2516f00.pdf
    

Durée : 1 semaine (3h)


  • 1h30 tp présentiel
    
  •    1h30 cours à distance 
    

Déroulement de la séquence: la modalité de l’enseignement est hybride et elle consiste à présenter abstraitement le concept des classes internes pendant la séance du cours à distance et l’application concrète de ce concept en Java (définition, manipulation) sur machine pendant la séance de tp en présentiel. A la fin de la séquence, l’apprenant est demandé de déposer un livrable d’une activité d’apprentissage proposé par le tuteur. Le passage à la séquence 5 est automatique.

Acteurs:

  • L’apprenant : l’apprenant doit écouter la démonstration du cours, assister au tp, prendre connaissance de l’activité, la lire et s'exercer pour la résoudre et déposer son livrable dans le délai accordé.
    
  • Le tuteur: le tuteur doit présenter le cours à distance, assurer le tp en présentiel, puis  il doit, à l’issue de la séquence, proposer l’énoncé de l’activité d’apprentissage sur la, inviter l’apprenant à la lire et à la répondre, aussi  par la suite, il corrige le livrable de l’apprenant.
    

Mode évaluation :

L’activité d’apprentissage est comptabilisée avec les autres activités d’apprentissages dans la note finale avec une pondération 20%.

Objectifs opérationnels:

  • L’apprenant doit se familiariser avec l’environnement java.
    
  • L’apprenant doit maîtriser le concept des classes internes en java.
    
  • L’apprenant doit réussir les exercices relatifs à l’implémentation des classes imbriquées et leurs utilisations tout en tenant compte de la visibilité de leurs membres en Java.
    

Livrables:

Un fichier .class contenant l’exécutable de son programme déposé à travers la plateforme.

Matériel requis :

Ressources:

  • Deitel et Deitel, Programmer en JAVA 4ème édition, Les éditions Reynold Goulet.
    
  • Lemay L, Le programmeur JAVA2, Campus Press.
    
  • Bailly C, Chaline J.F., Ferry H.C & al, Les langages orientés objets, Cepadues éditions.
    
  • http://www.fao.org/docrep/015/i2516f/i2516f00.pdf
    

Système de sortie: après avoir terminé la formation, l’apprenant est demandé à passer deux évaluations sommatives

Evaluation écrite

  1. Durée: 1h30
    
  1. Déroulement de l’évaluation: il s’agit d’un examen sur table sous forme d’un exercice de réflexion et de validation des connaissances théoriques de l’approche objet et d’un problème portant sur l’exploitation et l’application de ces concepts.
    
  1. Mode évaluation : l’exercice est noté sur 8 points, le problème est noté sur 12 points. Soit une note totale sur 20. Cette note est comptabilisée dans la note finale avec une pondération 20%.
    
  1. Critères d’évaluation:  l’apprenant doit se présenter le jour de l’examen, il doit respecter la durée accordée pour réaliser l’évaluation et remettre son compte rendu à temps.
    

Outils nécessaires: Aucun document n'est autorisé.

Matériel requis: Aucun matériel n’est nécessaire.

  1. Livrable: l’apprenant doit rendre un compte rendu sur la feuille de l’examen.
    

Evaluation pratique

  1. Durée : 1h30
    
  1. Déroulement de l’évaluation: il s’agit d’un examen pratique à distance portant sur la totalité de la formation sous forme d’une étude de cas à résoudre en Java.
    
  1. Mode évaluation : l’examen est noté sur 20. Cette note est comptabilisée dans la note finale avec une pondération 30%.
    
  1. Critères d’évaluation: l’apprenant doit répondre à l’examen et doit au moins réussir la compilation pour pouvoir générer le fichier .class demandé. Ce dernier doit être déposé dans le délai accordé. le délai accordé.
    

Outils nécessaires

Matériel requis

• Une machine équipée de eclipse.

• Une connexion internet.

Forum de discussion.

  1. Livrable: l’apprenant doit déposer un programme compilé avec l’extension .class dans le délai accordé.
    

Post test réussi? à cette étape, le tuteur doit calculer la moyenne finale de l’apprenant qui vaut : moyenne des notes des activités d’apprentissage 20% + note de la première évaluation formative 10% + note de la seconde évaluation formative 20% + note évaluation écrite sommative 20% + note évaluation pratique sommative * 30%.

Si moyenne >= 10 : l’apprenant peut passer à la formation avancée de programmation orientée objet avancée

Si moyenne <8/20 : l’apprenant est refusé et doit refaire la totalité de la formation

Si 8/20<= moyenne <10/20 : l’apprenant peut refaire la formation à partir de la séquence 3.

pour activité d'apprentissage:

  • une machine équipée de eclipse
  • une connexion internet

pour l’évaluation écrite:

  • aucun matériel n'est autorisé

critères d’évaluation:

pour l'activité d'apprentissage: l’apprenant doit répondre à l’examen et doit au moins réussir la compilation pour pouvoir générer le fichier .class demandé. Ce dernier doit être déposé dans le délai accordé.

outils requis:

Forum de discussion

outils requis:

Forum de discussion

  • Exposé informel (tableau, data show, transparents)
  • une machine équipée de eclipse
  • une connexion internet

critères d’évaluation:

pour l'activité d'apprentissage: l’apprenant doit répondre à l’examen et doit au moins réussir la compilation pour pouvoir générer le fichier .class demandé. Ce dernier doit être déposé dans le délai accordé.

pour l'évaluation écrite: l’apprenant doit se présenter le jour de l’examen, il doit respecter la durée accordée pour réaliser l’évaluation et remettre son compte rendu à temps.