En pratique

  • Cette unité d'enseignement (UE) articule 1 activité d'apprentissage :
    • Programmation de base
  • En 2024-2025, elle s'organise au premier quadrimestre et couvre 10 crédits (ECTS).
  • L'enseignement est principalement centralisé dans le campus : Département Informatique
  • Cette UE est remédiable d'une session à l'autre
  • Modalités d'enseignement
    • Auditoire
    • Travaux pratiques dans un local équipé spécifiquement

Activité d’apprentissage

Les finalités de l'UE

Le Bachelier en Intelligence Artificielle (IA) a pour objectif de former des experts capables d'utiliser et intégrer des solutions d'IA dans des systèmes informatiques. Ces experts sont avant tout des informaticiens·nes qui doivent maitriser les compétences fondamentales en programmation afin de collaborer efficacement avec des équipes multidisciplinaires.

Cette unité d'enseignement (UE) vise à développer une compréhension solide des principes fondamentaux de la programmation impérative et structurée, qui sont essentiels pour résoudre des problèmes complexes impliquant l'IA.

Le langage de programmation Python, en raison de sa flexibilité, de sa vaste communauté et de son utilisation répandue dans le domaine de l'IA, est employé dans ce cours.

Les contenus de l'UE

Le cours aborde les sujets suivants :

  • la programmation impérative,
  • les langages de programmation et leurs caractéristiques,
  • les bases d’un programme (variables, types de données, expressions),
  • les entrées-sorties,
  • les alternatives,
  • les boucles,
  • les listes et les tuples,
  • les fonctions,
  • les fichiers textes,
  • les expressions régulières,
  • les dictionnaires et les ensembles.

Des sujets complémentaires sont également abordés durant les laboratoires :

  • les bonnes pratiques de codage,
  • la documentation du code,
  • l’utilisation de bibliothèques externes,
  • la validation d’un programme au moyen du débogueur et de tests unitaires.

Le langage Python est utilisé pour illustrer les concepts de base de la programmation.

Les acquis d'apprentissage visés par l'UE

À la fin de l’activité d’apprentissage, l'étudiant :

  1. identifie, comprend et utilise correctement les concepts de base de la programmation impérative et structurée;
  2. conçoit et implémente un programme répondant à un cahier des charges précis;
  3. met en œuvre les bonnes pratiques de programmation afin d'obtenir un code source clair, structuré et documenté;
  4. utilise correctement les fonctionnalités d’une bibliothèque externe en se basant sur sa documentation technique;
  5. teste les composants d’un programme et, le cas échéant, diagnostique et corrige les dysfonctionnements observés.

Les méthodes d'enseignement-apprentissage

Les concepts sont présentés dans le cadre des séances de théorie. Les nouveaux concepts sont abordés par le biais d'exemples concrets, puis les étudiants sont amenés à réaliser des exercices sur papier, ainsi que sur leurs ordinateurs. 

Les séances de laboratoire sont quant à elles l'occasion pour les étudiants de réaliser individuellement des programmes informatiques à l'aide de différents outils (Python IDLE, PyCharm).

Engagement attendu de la part de l'étudiant.e

1. Participation active aux cours
La participation régulière aux cours théoriques et aux laboratoires est essentielle. Les séances théoriques vous apportent les concepts fondamentaux, tandis que les laboratoires vous permettent de les mettre en pratique. Être présent vous aide à mieux comprendre les notions abordées et à poser vos questions en temps réel.

2. Travail régulier 
L'apprentissage de Python nécessite un travail régulier en dehors des heures de classe. Il est important de consacrer du temps chaque semaine pour revoir les concepts et faire des exercices. La programmation demande de la pratique pour maîtriser les différents concepts et développer une pensée algorithmique. Un apprentissage continu et progressif vous permettra de renforcer vos compétences et de ne pas accumuler de retard.

3. Poser des questions
Il est normal de rencontrer des difficultés en programmation, surtout au début. Ne restez pas bloqué·e : posez des questions dès que vous en ressentez le besoin, que ce soit pendant les cours ou les laboratoires. 

4. Collaboration et autonomie
Travailler avec vos camarades peut être utile, mais il est essentiel de développer une autonomie dans l'apprentissage. Assurez-vous que vous êtes capable de résoudre des problèmes par vous-même et que vous comprenez bien les solutions que vous mettez en œuvre. La collaboration est bénéfique, mais n'oubliez pas que la programmation repose sur une capacité individuelle à réfléchir et à résoudre des problèmes.

5. Rigueur et esprit analytique
La programmation demande une approche méthodique et analytique. Soyez attentif aux détails, car une simple erreur peut rendre un programme inopérant. Testez régulièrement vos codes et assurez-vous qu’ils fonctionnent correctement dans différentes conditions. Apprendre de vos erreurs est une partie cruciale du processus : chaque bug rencontré est une opportunité de progresser et de mieux comprendre le fonctionnement du langage Python.

Sessions de janvier, de juin et de septembre

Cette épreuve présente des modalités similaires pour toutes les sessions. Elle est organisée durant la session. Il s'agit d'un examen. Cette épreuve est individuelle. Concrètement, l'épreuve repose sur une formulation écrite, une réalisation par mise en pratique. Elle se déroule avec des documents autorisés, avec du matériel spécifique . La correction de cette épreuve est assurée par validation mixte : automatique et par un.e enseignant.e.

Règles de l’UE

Quels sont les supports et matériels de cours indispensables ?

Supports et matériels de cours

Les étudiant.e.s sont invité.e.s à apporter leur ordinateur portable lors des séances de théories et de laboratoires. Disposer d'une autonomie de batterie suffisante ou d'un chargeur est vivement recommandé. 

Comment la note globale de l’UE est-elle déterminée ?

Explication de la pondération des différentes épreuves

La validation de l'UE01 « Programmation de base » nécessite de valider les acquis d'apprentissage suivants :

  • AA1 - Identifier, comprendre et utiliser correctement les concepts de base de la programmation impérative et structurée.
  • AA2 - Concevoir et implémenter un programme répondant à un cahier des charges précis.
  • AA3 - Mettre en œuvre les bonnes pratiques de programmation afin d'obtenir un code source clair, structuré et documenté.
  • AA4 - Utiliser correctement les fonctionnalités d’une bibliothèque tierce en se basant sur sa documentation technique.
  • AA5 - Tester les composants d’un programme et, le cas échéant, diagnostiquer et corriger les dysfonctionnements observés.

Les acquis d’apprentissage sont entrainés pendant l’année par la réalisation d'exercices ou de tests formatifs tant au cours théorique que durant les laboratoires.
Les acquis d’apprentissage sont évalués sur base de l'examen écrit organisé durant une session d'examens.

Un acquis est validé par la réussite de la partie correspondante de l'examen écrit.
Pour réussir l'UE, tous les acquis d'apprentissage doivent être validés, sauf éventuellement 1, mais les acquis AA1 et AA2 sont incontournables.

Une grille d’évaluation type sera disponible sur HELMo Learn dans le courant du mois de décembre (au plus tard).

Quelles sont les informations administratives de cette UE ?