2024-2025 / INFO0062-1

Object-oriented programming

Durée

25h Th, 20h Pr, 20h Proj.

Nombre de crédits

 Bachelier en sciences de l'ingénieur, orientation ingénieur civil5 crédits 
 Bachelier en sciences informatiques5 crédits 
 Master : ingénieur civil électricien, à finalité spécialisée en "electronic systems and devices"5 crédits 
 Master : ingénieur civil électricien, à finalité spécialisée "Smart grids"5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "management"5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "intelligent systems"5 crédits 
 Master : ingénieur civil électricien, à finalité spécialisée en Neuromorphic Engineering5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "computer systems security"5 crédits 
 Master en ingénieur de gestion, à finalité spécialisée en digital business5 crédits 
 Bachelier en sciences mathématiques5 crédits 
 Master en sciences mathématiques, à finalité approfondie5 crédits 
 Master en sciences mathématiques, à finalité didactique5 crédits 
 Master en sciences géographiques, orientation géomatique, à finalité spécialisée en geodata-expert5 crédits 

Enseignant

Bernard Boigelot

Langue(s) de l'unité d'enseignement

Langue anglaise

Organisation et évaluation

Enseignement au deuxième quadrimestre

Horaire

Horaire en ligne

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.

Association d'un ou plusieurs MOOCs