Durée
25h Th, 20h Pr, 20h Proj.
Nombre de crédits
Enseignant
Langue(s) de l'unité d'enseignement
Langue anglaise
Organisation et évaluation
Enseignement au deuxième quadrimestre
Horaire
Unités d'enseignement prérequises et corequises
Les unités prérequises ou corequises sont présentées au sein de chaque programme
Contenus de l'unité d'enseignement
Le cours introduit le paradigme de programmation orienté-objet et ses principaux concepts (notions d'objet, de classe, méthodes, constructeurs, messages, instanciation). Il présente ensuite en détail le mécanisme d'héritage et ses différentes applications. Il étudie également un certain nombre de problèmes annexes à la programmation orientée-objet, comme le clonage, le test d'équivalence et la sérialisation d'objets. Il introduit enfin les bases de la programmation orientée-objet concurrente.
L'ensemble des principes et mécanismes étudiés au cours sont illustrés et concrètement mis en pratique dans l'environnement de programmation Java.
Acquis d'apprentissage (objectifs d'apprentissage) de l'unité d'enseignement
A l'issue de ce cours, les étudiants seront capables de résoudre un problème de programmation à l'aide de l'approche orientée-objet, et de programmer leur solution en langage Java.
Ce cours contribue aux acquis d'apprentissage I.1, I.2, II.1, II.2, III.1, III.2, III.3, IV.1, V.2, VI.1, VI.2, VII.3, VII.4, VII.5 du programme de bachelier ingénieur civil.
Ce cours contribue aux acquis d'apprentissage I.1, I.2, II.1, II.2, III.1, III.2, III.3, IV.1, IV.4, V.2, VI.1, VI.2, VII.3, VII.4, VII.5 du programme d'ingénieur civil électricien.
Savoirs et compétences prérequis
Une connaissance de base de l'algorithmique est souhaitable.
Activités d'apprentissage prévues et méthodes d'enseignement
- Des leçons théoriques.
- Des séances de répétition visant à appliquer la matière du cours à des problèmes concrets, à introduire les outils de programmation à utiliser, et à guider les étudiants dans la réalisation de leur travail pratique.
- Un projet de programmation devant être réalisé individuellement ou par groupes de deux étudiants.
Mode d'enseignement (présentiel, à distance, hybride)
Cours donné exclusivement en présentiel
Informations complémentaires:
- Les leçons théoriques sont données par le professeur.
- Les séances de répétition et le support au travail pratique sont assurés par l'assistant et des étudiants moniteurs.
Supports de cours, lectures obligatoires ou recommandées
Autre(s) site(s) utilisé(s) pour les supports de cours
- Page WWW du cours (https://people.montefiore.uliege.be/boigelot/courses/oop)
Informations complémentaires:
Une copie des transparents projetés au cours est disponible sur la page WWW associée au cours.
Modalités d'évaluation et critères
Examen(s) en session
Toutes sessions confondues
- En présentiel
évaluation écrite ( questions ouvertes )
Informations complémentaires:
Un examen écrit à livres fermés en juin et et septembre. Un projet de programmation à réaliser.
Le projet intervient pour un tiers des points dans la note finale, à condition qu'aucune des notes parmi celle de l'examen et celle du projet ne corresponde à un échec grave (= 7/20). Dans le cas où au moins une de ces notes est un échec grave, la note finale est la plus petite parmi elles. Si le projet n'a pas été réussi en première session, il doit être représenté en seconde session. Les projets rendus en retard ne sont pas corrigés. Les projets plagiés entraînent une note de zéro pour le cours. Les notes de projet ne sont pas reportées d'une année académique à l'autre.
Stage(s)
Remarques organisationnelles et modifications principales apportées au cours
Une page www reprenant les informations relatives au cours peut être consultée à l'adresse suivante: https://people.montefiore.uliege.be/boigelot/courses/oop/.
Contacts
Professeur: Bernard Boigelot, bernard.boigelot@uliege.be, assistant: Baptiste Vergain, bvergain@uliege.be.