Introduction à la programmation

linfo1101  2020-2021  Louvain-la-Neuve

Introduction à la programmation
En raison de la crise du COVID-19, les informations ci-dessous sont susceptibles d’être modifiées, notamment celles qui concernent le mode d’enseignement (en présentiel, en distanciel ou sous un format comodal ou hybride).
5 crédits
30.0 h + 30.0 h
Q1
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.
 

La contribution de cette UE au développement et à la maîtrise des compétences et acquis du (des) programme(s) est accessible à la fin de cette fiche, dans la partie « Programmes/formations proposant cette unité d’enseignement (UE) ».
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

En raison de la crise du COVID-19, les informations de cette rubrique sont particulièrement susceptibles d’être modifiées.

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

En raison de la crise du COVID-19, les informations de cette rubrique sont particulièrement susceptibles d’être modifiées.

Un travail de programmation est effectué chaque semaine. Une interrogation intermédiaire a lieu en milieu de quadrimestre.  L'examen en fin 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.
La note finale du cours peut prendre en compte l'interrogation intermédiaire et les travaux durant le quadrimestre, en plus de la note de l'examen.  Les travaux et l'interrogation ne peuvent pas être refaits pour les sessions de juin ou septembre. En cas de doute sur la note finale les titulaires du cours se réservent le droit de demander à l'étudiant de passer un examen oral complémentaire.
Ressources
en ligne
Tout le materiel du cours sera disponible en ligne : transparents, syllabus, exercices, ...
Faculté ou entité
en charge


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

Intitulé du programme
Sigle
Crédits
Prérequis
Acquis
d'apprentissage
Approfondissement en sciences et technologies de l'information et de la communication (pour seule réinscription)

Approfondissement en statistique et sciences des données

Approfondissement en sciences géographiques

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

Mineure en sciences informatiques

Mineure en technologies numériques et société

Master [120] en sciences et technologies de l'information et de la communication

Bachelier en sciences mathématiques

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

Bachelier en sciences informatiques

Master [120] en linguistique

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