Introduction à la programmation (Coursera)

Offered by University of Geneva,
Introduction à la programmation (Coursera)

Quel que soit votre domaine d’études, vos activités professionnelles futures vous confronteront régulièrement aux technologies numériques. Même si ces technologies sont rendues aussi intuitives que possible, il est souvent nécessaire de les configurer ou de les adapter pour pouvoir les exploiter de façon optimale. Des compétences de base de la pensée informatique et de la programmation vous permettront de franchir ces étapes de façon appropriée. L’initiation à la programmation permet concrètement de s’ouvrir à la pensée informatique et à la mettre en pratique.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Vous pouvez conduire une voiture sans avoir de connaissances mécaniques, mais des compétences de base vous permettront d’améliorer son usage. L’objectif de cours est de vous permettre d’améliorer votre approche des technologies numériques de façon à les adapter à vos besoins plutôt que de les subir et de vous adapter à elles.
Cette initiation à la programmation vous permettra de mieux appréhender et contrôler l’environnement numérique dans lequel vous serez immergé que ce soit pour vos activités personnelles et surtout, professionnelles.

Syllabus

WEEK 1
Comprendre l'activité de programmation
Dans ce module, vous allez pouvoir découvrir où et comment l’activité de programmation se situe par rapport aux équipements informatiques qu’elle permet de piloter. On va vous amener à mieux appréhender les notions de base que sont les variables et les instructions de contrôle, puisque ces principes constituent les fondements de la programmation étudiée dans ce cours. En plus d'aborder un certain nombre d'autres concepts de base, ce module se terminera par une leçon qui vous permettra d’installer sur votre ordinateur l’environnement logiciel nécessaire pour programmer. Cette étape est essentielle, car la programmation est une activité pratique qui nécessite une boîte à outil logicielle. Le cours vous amènera progressivement à utiliser cet environnement de développement, notamment au travers d'exercices de programmation. Nous avons fait ce choix pour vous mettre en situation réelle avec un véritable environnement de développement, même si vous n’en utiliserez pas toutes les fonctionnalités. Vous l'aurez compris. Ce module n'est pas une simple introduction. Il plante le décor et vous prépare à bien appréhender et maîtriser la suite du cours. Nous vous encourageons à y consacrer le temps nécessaire.

WEEK 2
Les Types
Ce module aborde la question de la représentation des données en informatique. Vous approfondirez les notions de types et de variables ainsi que leur mise en pratique dans un programme séquentiel simple. La notion de types de données permet d’aborder la question de la représentation des données et d’étudier des exemples concrets que sont les types prédéfinis. Dans un deuxième temps, nous verrons ensemble la structure de programme séquentiel simple, puis la notion de package permettant d’intégrer des fonctionnalités optionnelles ainsi que les fonctionnalités de saisie au clavier et d’affichage à la console pour permettre de réaliser des interactions de base avec l’utilisateur d’un programme.

WEEK 3
Les structures de contrôle : les instructions conditionnelles
Les structures de contrôle conditionnelles permettent de gérer les situations où il est nécessaire de définir plusieurs traitements alternatifs à choisir en fonction du contexte. Dans ce module, on insistera particulièrement sur la notion de condition qui permet de décrire le contexte en fonction duquel le choix du traitement sera réalisé.

WEEK 4
Les structures de contrôle : les instructions itératives
Les structures de contrôle itératives permettent de gérer des situations où il est nécessaire de répéter un certain nombre de fois le même traitement. Le nombre de fois à répéter le traitement est déterminé par une condition qui exprime le contexte de la problématique à représenter. Dans ce module, nous approfondirons ensemble les notions de conditions et de logique.

WEEK 5
Les collections : les tableaux et les listes
Pour ce module, nous nous concentrerons sur les collections les plus courantes que sont les listes et les tableaux. Les collections permettent de gérer de grandes quantités de données de même type. Elles permettent d’accéder à la fois à l'ensemble des données ou à chaque donnée individuellement. Elles proposent aussi un ensemble de fonctionnalités pour en faciliter l'exploitation, comme de retrouver une donnée précise dans la collection.

WEEK 6
Programmation procédurales : les méthodes
La notion de méthode permet d'introduire une démarche d'analyse pour la résolution de problèmes. Cela consiste à réduire successivement une problématique complexe en sous-problèmes plus simples. Chaque sous-problème sera ensuite résolu sous forme d’une méthode. L'ensemble des méthodes résultantes sera ensuite « orchestré » pour fournir une solution à la problématique initiale. C'est donc dans cette démarche de dissection de problèmes que nous nous lançons pour ce module!

WEEK 7
Les bases de la programmation orientée objet : classes et objets
La notion de classe et, plus largement, la programmation dite orientée objet, propose aussi une démarche d'analyse et de représentation d’un problème. Pour le présenter simplement, il s'agit de déterminer non plus simplement les sous-tâches d’un problème, mais d'identifier à un niveau plus abstrait des catégories d’intervenants du problème. Ces intervenants sont ensuite représentés sous forme de classes qui décrivent leurs caractéristiques et leur comportement communs. Le programme se présente alors comme un ensemble de classes qui interagissent et collaborent entre elles.
Dans ce module, nous verrons uniquement les quelques notions de bases suivantes sous une forme simple : attributs, méthodes et héritage. Cela devrait toutefois suffire à vous fournir les quelques bases de la programmation orientée objet.

WEEK 8
Les fichiers & la gestion d'exception
La notion de fichier permet de traiter les questions de stockage pérenne de l’information. Ces questions ne se résument pas à la seule question de l'enregistrement et de la conservation de l’information. Elles nécessitent aussi de se poser la question de l'organisation et de la structuration de l'information pour pouvoir ensuite l'exploiter efficacement. Ces questions seront abordées dans ce module dans le cadre des fichiers textes en incluant la gestion d'exception qui permet de gérer les conditions exceptionnelles pendant l'exécution du programme

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Problem Solving Using Computational Thinking (Coursera) Coursera
University of Michigan

Problem Solving Using Computational Thinking (Coursera)

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it." Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

Aug 17th 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Aug 10th 2026
4 Weeks
COBOL Programming with VSCode (Coursera) Coursera
IBM

COBOL Programming with VSCode (Coursera)

Professor Tak Auyeung of American River College, said it beautifully, “A programming language is not a fashion statement” it is used for a purpose. Whether it is to add new features, modify logic, create APIs to integrate it into other applications, or implement modern development practices, businesses around the world need application developers who know COBOL.

Aug 17th 2026
3 Weeks
Programming and Application Foundations (Coursera) Coursera
Illinois Tech

Programming and Application Foundations (Coursera)

This course introduces the students to the creation and deployment of modern, standards-compliant web pages written in HTML, CSS, and JavaScript in the context of the client-server architecture of the web. The course also covers the fundamentals of programming in a modern programming language, basic data modeling, database design, implementation, and administration of single-user and shared multi-user database applications using a contemporary relational database management system.

Aug 17th 2026
5-12 Weeks
Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Aug 17th 2026
5-12 Weeks
Computer Science: Programming with a Purpose (Coursera) Coursera
Princeton University

Computer Science: Programming with a Purpose (Coursera)

The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world.

Aug 10th 2026
5-12 Weeks
Persistent Memory Technology - Introduction and Deployment (Coursera) Coursera
EDUCBA

Persistent Memory Technology - Introduction and Deployment (Coursera)

Embark on a dynamic learning journey through this course. In the first module, explore the intricacies of Persistent Memory (PMEM), unraveling its fundamental concepts, characteristics, and operating system support. Transition seamlessly into the second module, mastering transactional concepts, optimizing hardware configurations, and discerning between volatile and persistent libraries. In the final module, dive into advanced programming with libpmemobj, overcoming C++ Standard limitations, and applying insights to real-world scenarios like building a phonebook.

Aug 17th 2026
3 Weeks
An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Aug 10th 2026
5-12 Weeks