Programmation orientée objets GIN3203
Enseignant:
Email:
Durée totale du cours: 31.5 H (22.5 Projet)
Semestre : 2
Nombre de crédits : 2
| Modules
spécialisés |
Modules de
base |
Sciences et techniques de
l’ingénierie |
Préparation à la carrière professionnelle |
| X |
| Nombre d’heures | Activités hors classe |
| 31.5 | 22.5 |
| Code | : GIN3203 | Programmation orientée objets
|
Volume Horaire : 3 h Cours intégrés + 1h3h:00 Travaux pratiques + 1h 30 projet (par semaine)
Objectifs d’apprentissage et compétences visées
Initiation au paradigme Objet et apprentissage des principes de base de la programmation orientée objet. Apprendre à identifier les objets et le classes dans un problème et à résoudre un problème grâce à un ensemble d’objets interagissant
Contenu du cours
- Chapitre 1 : Présentation du langage java
- Historique
- JDK/JRE/JVM
- Hello SUPTECH : Exemple
- Chapitre 2 : Concept Object
- Abstraction
- Encapsulation
- Héritage
- Polymorphisme
- Chapitre 3 : Les bases du langage java
- Types primitives
- Les opérateurs (binaires, ternaires, relationnels, logiques)
- Les structures (contrôles, itératives)
- Chapitre 4 : Classes et objets java
- Modificateurs de visibilité
- Attributs/Constructeurs/Méthodes
- Membres d’instance et de classes
- Chapitre 5 : Les bases du langage java (suite)
- Tableau/Matrice
- Chaine de caractère/StringBuffer
- Wrapper
- Chapitre 6 : Héritage, polymorphisme et interfaces
- Héritage
- Class et méthode abstraite
- Les paquetages
- Polymorphisme
- Interface
- Chapitre 7 : Les exceptions
- Types
- Gestion des exceptions sans propagation
- Gestion des exceptions avec propagation
- Définition de nouvelles exceptions
- Le bloc finally
- Exemples
- Chapitre 8 : Les entrées/sorties
- Manipulation des fichiers textes
- Manipulations des fichiers de données
- Sérialisation
Contenu « Travaux Pratiques »
- TP 01 : Mise en route
- Installation de l’environnement de travail
- Programmation en mode Console HelloWorld
- Types de données primitifs, constantes, les opérateurs
- Les méthodes statiques
- TP 02 : Classes et objets
- Constructeurs
- Propriétés des attributs
- Les attributs privés/les constructeurs multiples
- TP 03 : Tableaux & Chaînes de caractères
- Tableau à une dimension
- Tableau à deux dimensions
- Class String
- Class StringBuffer
- Tableau d’objet
- TP 04 : Héritage
- TP 05 : Héritage/Classe abstraite
- TP 06 : Interface
- TP 07 : Les exceptions
- Gestion des exceptions sans propagation
- Gestion des exceptions avec propagation
- Instruction throw
- Définition de nouvelles exceptions
- Le bloc finally
- TP 08 : Les entrées/sorties
- Manipulation de fichier texte
- Manipulation de fichier binaire
- Sérialisation des objets
Méthodes d’enseignement et d’apprentissage
- Enseignement frontal (magistral) avec des exemples à résoudre en
- Exercices théoriques et études de cas (présentation et discussion).
- Travaux pratiques (laboratoire)
- Travaux à faire à domicile (mini-projet, exposé, compte-rendu, …)
Connaissances et compétences pré-requises
- Algorithmique et structures de données.
- Programmation
Références bibliographiques
- Un polycopié (Notes du cours) de l’enseignant sera
- Les recommandations bibliographiques suivantes doivent être considérées :
- James Gosling, Bill Joy, Guy L. Steele, Jr., Gilad Bracha, and Alex Buckley. The Java Language Specification, Java SE 7 Edition. Addison-Wesley Professional, 1st edition,
- Boyarsky and S. Selikoff. OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808. Wiley, 2014, ISBN : 9781118957424.
- Anne Tasso, Le Livre De Java Premier Langage : Avec 90 Exercices Corrigés, Eyrolles, 2011, ISBN : 2212133073
Modalité d’évaluation
- 40% Contrôle continu (TP noté, Test, Assiduité, Devoir surveillé, travaux non présentiels, …)
- 60% Examen semestriel
- TP, Test, Assiduité, Travaux non présentiels, Mini-projets, … = 40% de Contrôle Continu
Résultats d’apprentissage :
A l’issue de cette matière, l’étudiant doit :
- Appliquer les principes de conception de logiciels à la conception orientée objet
- Développer des modèles orientés objet pour un système logiciel de taille moyenne
- Évaluer le compromis de conception de différentes conceptions
- Implémenter une conception orientée objet dans un langage adapté
- Utiliser les cadres de conception orientés objet couramment disponibles pour le développement d’applications
- Appliquer les connaissances des principes fondamentaux de la science et de l’ingénierie
Compétences génériques :
Au terme de cette matière, les étudiants doivent avoir les compétences suivantes :
- Une capacité à appliquer les connaissances des principes fondamentaux de la science et de l’ingénierie
- Compétence technique approfondie dans au moins une discipline d’ingénierie
- Une capacité à entreprendre l’identification, la formulation et la solution des problèmes
- Une attente de la nécessité d’entreprendre un apprentissage tout au long de la vie et la capacité de le faire