Choisissez votre langue
Cours de langages de programmation
Plus de 2 millions d'apprenants dans le monde

Cours de langages de programmation

Maîtrisez la théorie et la pratique derrière chaque grand paradigme de langage de programmation, de la syntaxe et de la sémantique à la gestion de la mémoire et à la construction de compilateurs. Ce cours vous offre les connaissances approfondies et transférables pour évaluer, concevoir et travailler en toute confiance dans n'importe quel écosystème de langage. Que vous fassiez progresser votre carrière ou que vous renforciez vos bases en informatique, cette ressource est la référence définitive pour les programmeurs sérieux.

Dedika pour entreprises

Ce que vous allez apprendre:

Vous construirez une compréhension rigoureuse de la manière dont les langages de programmation sont conçus, classifiés et mis en œuvre. Ce cours couvre les grammaires formelles, les techniques d'analyse syntaxique, les systèmes de types, les règles de portée et les mécanismes de contrôle de flux à travers plusieurs paradigmes. Vous étudierez en profondeur la programmation fonctionnelle, orientée objet, impérative et logique, puis passerez aux stratégies de gestion de la mémoire et à l'architecture système du moteur d'exécution. Le matériel supplémentaire couvre la construction de compilateurs, la métaprogrammation, la conception de langages spécifiques à un domaine (DSL) et l'intégration de systèmes polyglottes. À terme, vous serez équipé pour évaluer tout langage par rapport aux exigences réelles d'un projet et communiquer ces décisions clairement aux équipes techniques.

Comment vous étudiez de façon pratique Cours de langages de programmation

Comment vous pratiquez Cours de langages de programmation

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 37 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondations des Langages de Programmation

  • Leçon 1 • Histoire et Évolution des Langages

    Retrace le développement des langages de l'assemblage aux paradigmes modernes. Fournit un contexte historique pour comprendre les décisions de conception actuelles.

  • Leçon 2 • Qu'est-ce qu'un Langage de Programmation

    Définit les langages de programmation comme des systèmes formels pour exprimer le calcul. Établit le vocabulaire utilisé tout au long du cours.

  • Leçon 3 • Classification des Langages et Paradigmes

    Catégorise les langages par paradigme : impératif, fonctionnel, logique et orienté objet. Prépare les étudiants à évaluer tout langage par rapport à une taxonomie.

  • Leçon 4 • Objectifs de Conception des Langages et Compromis

    Examine les priorités concurrentes — lisibilité, écrivalité, fiabilité — qui façonnent la conception des langages. Relie les choix de conception à l'utilisabilité réelle.

Chapitre 2Voir les détails

Syntaxe, Grammaires et Analyse Syntaxique

  • Leçon 1 • Arbres Syntaxiques Abstraits

    Distingue les arbres syntaxiques abstraits des arbres d'analyse syntaxique et explique leur rôle dans la compilation. Prépare les étudiants à l'analyse sémantique dans les chapitres suivants.

  • Leçon 2 • Analyse Syntaxique Descendante et Ascendante

    Compare les stratégies d'analyse syntaxique récursive descendante et par décalage-réduction. Équipe les étudiants pour choisir et implémenter des analyseurs syntaxiques appropriés.

  • Leçon 3 • Analyse Lexicale et Tokenisation

    Couvre le rôle de l'analyseur lexical dans la conversion du texte source en jetons avant l'analyse syntaxique. Fait le pont entre le code source brut et l'analyse au niveau de la grammaire.

  • Leçon 4 • Arbres d'Analyse Syntaxique et Ambiguïté

    Explique comment les arbres d'analyse syntaxique représentent la structure syntaxique et comment l'ambiguïté compromet l'analyse syntaxique déterministe. Soutient directement les compétences en conception de grammaires.

  • Leçon 5 • Grammaires Formelles et Notation BNF

    Introduit les grammaires hors-contexte et la forme de Backus-Naur comme outils pour spécifier la syntaxe des langages. Fonde tout le travail ultérieur d'analyse syntaxique.

Chapitre 3Voir les détails

Sémantique et Systèmes de Types

  • Leçon 1 • Approches de la Sémantique Formelle

    Introduit les sémantiques opérationnelle, dénotationnelle et axiomatique comme cadres complémentaires. Établit la base du raisonnement sur la correction des programmes.

  • Leçon 2 • Fondamentaux des Systèmes de Types

    Définit les types, la vérification de types et le spectre du typage statique au typage dynamique. Relie la discipline de type à la fiabilité des programmes.

  • Leçon 3 • Inférence de Type et Polymorphisme

    Couvre l'inférence de type basée sur des algorithmes et le polymorphisme paramétrique. Montre comment les langages atteignent la généralité sans sacrifier la sécurité.

  • Leçon 4 • Constructions de Type Avancées

    Explore les types de données algébriques, les types dépendants et les génériques. Prépare les étudiants à tirer parti des systèmes de types expressifs dans les langages modernes.

Chapitre 4Voir les détails

Variables, Portée et Liaison

  • Leçon 1 • Variables et Modèles de Stockage

    Examine les attributs des variables — nom, type, valeur, durée de vie — et comment le stockage est alloué. Fonde toutes les discussions ultérieures sur la portée et la liaison.

  • Leçon 2 • Espaces de Noms et Modules

    Couvre les mécanismes d'espace de noms qui partitionnent la portée globale et soutiennent les programmes à grande échelle. Fait le pont entre la théorie de la portée et l'organisation logicielle pratique.

  • Leçon 3 • Règles de Portée et Visibilité

    Contrastre la portée statique (lexicale) et dynamique et leurs effets sur la résolution de noms. Impacte directement la façon dont les étudiants lisent et écrivent du code dans tout langage.

  • Leçon 4 • Moment de Liaison et Durée de Vie

    Distingue quand les liaisons sont établies — au moment de la compilation vs. à l'exécution — et combien de temps elles persistent. Relie aux concepts de gestion de mémoire introduits plus tard.

Chapitre 5Voir les détails

Flux de Contrôle et Programmation Structurée

  • Leçon 1 • Concurrence et Coroutines

    Introduit les threads, l'async/await et les coroutines comme abstractions avancées du flux de contrôle. Étend la programmation structurée aux modèles d'exécution concurrente.

  • Leçon 2 • Sous-programmes et Passage de Paramètres

    Examine la conception des fonctions et procédures, y compris tous les modes de passage de paramètres. Relie aux concepts de portée et de liaison du chapitre précédent.

  • Leçon 3 • Instructions Conditionnelles et de Sélection

    Couvre les constructions if-else, switch et de filtrage par motif à travers les paradigmes. Établit la base de toute l'étude du flux de contrôle.

  • Leçon 4 • Itération et Constructions de Boucle

    Analyse les boucles contrôlées par compteur, par condition et basées sur les collections. Prépare les étudiants à raisonner sur la terminaison et l'efficacité.

  • Leçon 5 • Mécanismes de Gestion d'Exceptions

    Couvre la déclaration d'exception, la propagation et la conception de gestionnaires. Montre comment les langages gèrent en toute sécurité le flux de contrôle anormal.

Chapitre 6Voir les détails

Langages Impératifs et Orientés Objet

  • Leçon 1 • Patrons de Conception OOP en Pratique

    Applique des patrons de conception classiques pour renforcer les principes de l'OOP. Fait le pont entre les fonctionnalités du langage et l'architecture logicielle professionnelle.

  • Leçon 2 • Concepts Cœur du Langage Impératif

    Passe en revue l'assignation, le séquencement et la mutation d'état comme fondement de la programmation impérative. Ancre l'étude de l'OOP dans les racines procédurales.

  • Leçon 3 • Classes, Objets et Encapsulation

    Définit les classes comme des modèles et les objets comme des instances, en mettant l'accent sur l'encapsulation. Construit le vocabulaire structurel pour la conception OOP.

  • Leçon 4 • Héritage et Polymorphisme

    Couvre l'héritage simple et multiple, la redéfinition de méthode et la répartition dynamique. Relie les concepts de système de types au comportement à l'exécution de l'OOP.

  • Leçon 5 • Interfaces, Classes Abstraites et Mixins

    Examine les contrats de conception à travers les interfaces et les classes abstraites. Étend l'héritage à des modèles de composition flexibles.

Chapitre 7Voir les détails

Langages de Programmation Fonctionnelle

  • Leçon 1 • Fonctions d'Ordre Supérieur et Fermetures

    Couvre map, filter, fold et la capture de fermeture comme outils fonctionnels fondamentaux. S'appuie sur les connaissances de portée et de liaison des chapitres précédents.

  • Leçon 2 • Types de Données Algébriques et Filtrage par Motif

    Utilise les types sommes et produits avec le filtrage par motif pour modéliser les données avec précision. Renforce les concepts de système de types dans un contexte fonctionnel.

  • Leçon 3 • Concepts Fonctionnels Cœur

    Introduit les fonctions pures, l'immuabilité et la transparence référentielle comme piliers de la programmation fonctionnelle. Contraste avec la mutation d'état impérative.

  • Leçon 4 • Récursivité et Optimisation des Appels Terminaux

    Examine la récursivité comme mécanisme d'itération principal et l'optimisation des appels terminaux comme stratégie de performance. Relie aux concepts de flux de contrôle.

  • Leçon 5 • Monades et Effets Fonctionnels

    Introduit les monades comme une manière structurée de gérer les effets comme l'E/S et l'état. Fait progresser les étudiants vers une conception fonctionnelle de niveau professionnel.

Chapitre 8Voir les détails

Gestion de la Mémoire et Systèmes d'Exécution

  • Leçon 1 • Gestion Manuelle de la Mémoire

    Couvre l'allocation et la désallocation explicites, y compris les erreurs courantes comme les fuites et les pointeurs pendants. Relie aux concepts de durée de vie des variables.

  • Leçon 2 • Architecture du Système d'Exécution

    Explore les composants d'un système d'exécution de langage : pile d'appels, gestionnaire de tas et intégration du GC. Synthétise tous les sujets de mémoire en un modèle unifié.

  • Leçon 3 • Algorithmes de Ramasse-Miettes

    Passe en revue les stratégies de marquage-balayage, de comptage de références et de GC générationnel. Équipe les étudiants pour raisonner sur la surcharge et les temps de pause du GC.

  • Leçon 4 • Organisation et Allocation de la Mémoire

    Décrit les régions mémoire de la pile, du tas et statique, et comment les langages allouent les objets. Fonde toutes les discussions sur la gestion de la mémoire.

  • Leçon 5 • Propriété et Vérification d'Emprunt

    Examine la sécurité mémoire basée sur la propriété comme alternative au GC. Montre comment des règles au moment de la compilation éliminent des classes entières d'erreurs à l'exécution.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Développeurs de logiciels : qui souhaitent dépasser les limites d’un seul langage.

  • Étudiants en informatique : prêts à relier la théorie de la salle de classe à la pratique concrète.

  • Ingénieurs backend : curieux de comprendre pourquoi les langages se comportent différemment sous le capot.

  • Personnes en reconversion professionnelle : entrer dans le développement logiciel avec une soif de profondeur fondamentale.

  • Responsables techniques : ayant besoin d'une base fondée sur des principes pour guider les décisions linguistiques de l'équipe.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable en Côte d’Ivoire ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF