Contenus
Objectif du Cours
L’objectif de ce cours est d’aider les étudiants du département d’économie à acquérir des compétences en pensée computationnelle et en traitement des données, conformes aux exigences de l’ère numérique, en leur enseignant les concepts fondamentaux de la programmation. Les étudiants développeront leurs compétences en pensée computationnelle à travers les algorithmes et les organigrammes, tout en ayant l’occasion d’expérimenter le processus de développement logiciel à l’aide du langage de programmation Python. Outre les structures de données fondamentales telles que les types de données, les listes, les tuples, les ensembles et les dictionnaires, les capacités de résolution de problèmes seront renforcées au moyen des structures de décision, des boucles et des fonctions. De plus, grâce à des bibliothèques telles que NumPy, Pandas et Matplotlib, les étudiants développeront leurs compétences en analyse, en visualisation et en interprétation des données.
Contenu du Cours
Introduction à la programmation et concepts fondamentaux
* Pensée computationnelle
* Qu’est-ce qu’un algorithme et comment le concevoir ?
* Organigrammes (diagrammes de flux)
* Processus de développement logiciel
Présentation générale des langages de programmation
* Introduction au langage de programmation Python
* Qu’est-ce que Python ?
* Concepts de compilateur et d’interpréteur
* Utilisation et installation des IDE
* Présentation de l’interface Python
Types de données et structures de base
* Données numériques : entiers (integers), nombres à virgule flottante (floats)
* Données textuelles : chaînes de caractères (strings)
* Données logiques : booléens (booleans)
* Définition et utilisation des variables
* Opérateurs : arithmétiques, de comparaison, logiques
Structures de décision, boucles et gestion des erreurs
* Structures if, else, elif
* Structures de décision imbriquées
* Boucles while et for
* Utilisation de break et continue dans les boucles
* Fonctions range et enumerate
* Types d’erreurs
* Blocs de gestion des exceptions
Fonctions
* Fonctions avec et sans paramètres
* Instruction return
* Expressions lambda
* Fonctions récursives
Structures de données
* Listes (list)
* Tuples (tuple)
* Ensembles (set)
* Dictionnaires (dictionary)
Bibliothèques standard de Python
* Module math
* Module random
* Modules datetime et time
Opérations sur les fichiers
* Création, écriture et lecture de fichiers
* Fonctions de mise à jour et de contrôle des fichiers
Bibliothèques d’analyse et de visualisation des données
* NumPy : calculs numériques
* Pandas : analyse des données et structures de type DataFrame
* Matplotlib : visualisation graphique des données
Acquis d'Apprentissage du Cours
À la fin du cours, les étudiants sont censés atteindre les acquis d’apprentissage suivants :
Être capables de modéliser le processus de résolution de problèmes en utilisant des algorithmes de base et des organigrammes.
Comprendre les processus de développement logiciel en développant des compétences en pensée computationnelle.
Être capables d’écrire des programmes simples en utilisant la syntaxe et les structures de base du langage de programmation Python.
Effectuer des opérations à l’aide de variables, de types de données et d’opérateurs de base.
Contrôler le flux d’exécution d’un programme à l’aide des structures de décision et des boucles.
Réaliser des opérations de stockage et de traitement des données en utilisant des structures de données telles que les listes, les tuples, les ensembles et les dictionnaires.
Développer un code modulaire et lisible à l’aide des fonctions.
Effectuer des opérations sur les fichiers afin de lire des données à partir de sources externes ou d’enregistrer des données.
Réaliser diverses opérations à l’aide des bibliothèques standard de Python (math, random, datetime, etc.).
Effectuer des analyses et des visualisations de base de données économiques en utilisant les bibliothèques NumPy, Pandas et Matplotlib.
Appliquer les connaissances en programmation à des problèmes fondés sur les données dans le domaine de l’économie.
Méthodes d'Enseignement
Cours magistral : Il sera utilisé pour l’enseignement des concepts fondamentaux, des algorithmes et de la structure du langage de programmation Python.
Démonstration : Des applications exemples seront réalisées pendant le cours afin de mettre en pratique les notions théoriques.
Résolution de problèmes et travaux pratiques : Le développement d’algorithmes et la pratique du codage en Python seront effectués à partir d’exemples orientés vers l’économie.
Méthode questions-réponses : Elle sera utilisée afin de favoriser la participation active des étudiants et de renforcer les acquis.
Travaux pratiques en laboratoire : Un enseignement appliqué sera dispensé dans un environnement informatique où les programmes Python seront écrits et exécutés, et où des analyses de données seront réalisées.
Devoirs : Les étudiants mettront en pratique leurs acquis à travers un projet de petite envergure ou un devoir d’analyse de données.
Rétroaction : Une évaluation et une rétroaction seront fournies à l’issue des activités de laboratoire.
Ressources
Les ressources pédagogiques de chaque semaine seront mises en ligne sur la page du cours Moodle, sous la rubrique correspondant à la semaine concernée.
Les ressources suivantes pourront être utilisées à titre complémentaire (optionnel) en appui aux ressources principales du cours :
Yıldız, B. Python Projeleri ve Popüler Kütüphaneler (3e édition)
Tungut, H. B. Algoritma ve Programlama Mantığı (23e édition)
Taşçı, V. Python Eğitim Kitabı (4e édition)
Kalb, I. Learn to Program with Python 3.
Sweigart, Al. The Big Book of Small Python Projects: 81 Easy Practice Programs
Matthes, Eric. Python Crash Course, : A Hands-On, Project-Based Introduction to Programming. (3e édition)
Tuckfield, Bradford. Dive into Algorithms: A Pythonic Adventure for the Intrepid Beginner.
Intitulés des Sujets
Système d'évalution
Evalution de la Compétence
Tableau de la Charge de Travail