Introduction à la programmation

linfo1101  2023-2024  Louvain-la-Neuve

Introduction à la programmation
5.00 crédits
30.0 h + 30.0 h
Q1
Enseignants
Mens Kim; Nijssen Siegfried; Pecheur Charles;
Langue
d'enseignement
Français
Thèmes abordés
  • Concepts fondamentaux de la programmation orientée-objet ;
  • Langage de programmation Python ;
  • Analyse d'un problème informatique, conception, spécification et mise en oeuvre d'une solution ;
  • Structures de données linéaires.
Acquis
d'apprentissage

A la fin de cette unité d’enseignement, l’étudiant est capable de :

1
Eu égard au référentiel AA du programme « Bachelier en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
  • S1.I2
  • S2.2, S2.4
Les étudiants ayant suivi avec fruit ce cours seront capables de
  • Appliquer les concepts, lois, raisonnements à une problématique disciplinaire de complexité cadrée.
  • Décrire des outils de modélisation et de calcul adéquats pour résoudre une problématique disciplinaire cadrée.
  • Modéliser un problème et concevoir une ou plusieurs solutions techniques répondant au cahier des charges
  • Implémenter et tester une solution sous la forme d'une maquette, d'un prototype et/ou d'un modèle numérique.
  • S'engager collectivement sur un plan de travail, un échéancier (et des rôles à tenir).
  • Communiquer sous forme graphique et schématique ; interpréter un schéma, présenter les résultats d'un travail, structurer des informations.
  • Lire, analyser et exploiter des documents techniques (normes, plans, cahier de charge, spécifications,...).
  • Rédiger des documents écrits de synthèse en tenant compte des exigences posées dans le cadre des missions (projets et problèmes).
  • Démontrer une bonne compréhension des concepts et de la méthodologie de la programmation orientée-objet.
  • Utiliser à bon escient les éléments d'un langage orienté-objets tel que Python.
 
Contenu
  • Programmes, code source, exécution de programmes ;
  • Identifiants, variables, valeurs, types, affectation ;
  • Expressions, instructions ;
  • Structures conditionelles et boucles ;
  • Fonctions, paramètres, appels, exécution, résultats, portée de variables ;
  • Spécifications, tests ;
  • Modules ;
  • Structures de données, listes, chaînes de caractères et leurs opérations ;
  • Références et structures de données imbriquées ;
  • Listes imbriquées, tuples, matrices, et dictionnaires ;
  • Algorithmes de recherche dichotomiques ;
  • Manipulation de fichiers, entrées-sorties ;
  • Mécanismes d'exception ;
  • La programmation orientée objets, ramasse-miettes ;
  • Classes, objets, constructeurs, méthodes ;
  • Références vers un objet, références à et appeler soi-même ;
  • Variables de classe, d'instance, locales, leur portée et visibilité ;
  • Composition d'une classe, héritage et encapsulation ;
  • Polymorphisme, appels à la classe mère (super) et la liasion dynamique des méthodes ;
  • Egalité d'objets ;
  • Structure de données chaînées.
Méthodes d'enseignement
Les méthodes d'enseignement utilisées encouragent l'apprentissage actif des l'étudiants, par :
  • des cours magistraux,
  • des séances d'exercices encadrées par un tuteur,
  • de la programmation sur la plateforme INGInious.
Même si une préférence est donné au séances en présentiel, en fonction de la situation sanitaire et du nombre d'étudiants inscrits une autre forme d'enseignement et de l'évaluation (distanciel, co-modal ou hybride) peut être envisagée.
Modes d'évaluation
des acquis des étudiants
Une mission de programmation est effectué chaque semaine.
Une interrogation intermédiaire a lieu en milieu de quadrimestre.
L'examen en fin de quadrimestre a pour objectif de vérifier non seulement la connaissance de la matière, mais également la capacité à appliquer les connaissances acquises pour écrire de programmes Python simples, mais corrects. L'examen est fait sur ordinateur, sans accès à des ressources extérieures. 
La note finale du cours prend en compte l'interrogation intermédiaire et les missions durant le quadrimestre, en plus de la note de l’examen.
Les missions et l'interrogation ne peuvent pas être refaits pour les sessions de juin ou septembre.
Si la note de l'interrogation intermédiaire est supérieure à celle de l’examen, elle interviendra pour 1/3 et la note de l’examen pour 2/3.
Si la note de l'interrogation intermédiaire est inférieure à celle de l’examen, seule la note de l’examen sera utilisée pour calculer la note finale.
Un bonus de 1 point sera accordé aux étudiants ayant participé de manière autonome et soumis régulièrement les missions de programmation pendant le quadrimestre. L'utilisation d'aide extérieure ou d'outils d'IA générative dans les missions n'est pas souhaitée.
En cas de détection confirmée de plagiat lors des examens, les titulaires du cours se réservent le droit de demander à l'étudiant de passer une interrogation orale.
Ressources
en ligne
Tout le materiel du cours sera disponible en ligne : transparents, syllabus, exercices, ...
Faculté ou entité
en charge
INFO


Programmes / formations proposant cette unité d'enseignement (UE)

Intitulé du programme
Sigle
Crédits
Prérequis
Acquis
d'apprentissage
Mineure en technologies numériques et société

Master [120] en science des données, orientation statistique

Master [120] en linguistique

Approfondissement en sciences géographiques

Bachelier en sciences mathématiques

Bachelier en sciences informatiques

Approfondissement en statistique et sciences des données

Mineure en sciences informatiques

Mineure en statistique, sciences actuarielles et science des données

Certificat d'université : Statistique et science des données (15/30 crédits)