C'est trop fastoche !

La programmation

Le principe de la programmation

La programmation informatique consiste à donner à un ordinateur une suite d'instructions afin qu'il réalise une tâche. Ces instructions forment un programme.

L'ordinateur exécute les instructions qui lui sont fournies, mais il ne détermine pas lui-même la méthode à employer pour résoudre un problème. Le programmeur doit donc définir précisément les opérations à effectuer et leur ordre.

Analyser le problème

La création d'un programme commence par l'analyse du problème. Le résultat attendu est défini, ainsi que les informations nécessaires pour l'obtenir et les traitements à effectuer.

Un programme qui calcule une moyenne doit par exemple recevoir plusieurs notes, additionner leurs valeurs, déterminer leur nombre puis diviser la somme obtenue par ce nombre. Cette réflexion permet de définir la solution avant d'écrire le code.

Construire l'algorithme

La solution est ensuite organisée sous la forme d'un algorithme. Il décrit les différentes étapes nécessaires pour résoudre le problème dans un ordre logique, sans dépendre d'un langage de programmation particulier.

L'algorithme permet de vérifier le fonctionnement de la solution avant de la traduire en code. Il peut être décrit avec des phrases simples, un pseudo-code ou un schéma.

Les éléments communs aux programmes

Les langages de programmation possèdent des syntaxes différentes, mais ils utilisent généralement les mêmes principes fondamentaux pour construire les algorithmes et les programmes.

  • Variable : mémorise une information qui peut être utilisée ou modifiée pendant l'exécution du programme. Une variable age peut par exemple contenir la valeur 15.
  • Condition : permet de choisir une action selon qu'une situation est vraie ou fausse. Une condition peut par exemple vérifier si age >= 18.
  • Boucle : permet de répéter des instructions. Une boucle peut par exemple parcourir successivement tous les éléments d'une liste.
  • Fonction : regroupe des instructions réalisant une tâche précise afin de pouvoir les réutiliser. Une fonction peut par exemple calculer l'aire d'un rectangle à partir de sa longueur et de sa largeur.
  • Objet : regroupe des données et des actions associées lorsque le langage et la méthode de programmation utilisent la programmation orientée objet.

Écrire le programme

L'algorithme est ensuite traduit dans un langage de programmation. Le choix du langage dépend notamment du type de programme à réaliser.

Le programmeur écrit alors le code source en respectant la syntaxe du langage. Par exemple, l'algorithme qui vérifie si une personne est majeure peut être traduit en instructions permettant de demander son âge, de conserver cette valeur dans une variable, de la comparer à 18 et d'afficher le résultat.

Le code source doit ensuite être transformé en instructions exécutables par le processeur. Selon le langage utilisé, cette transformation est notamment réalisée par un compilateur ou un interpréteur.

Tester le programme

Une fois le programme écrit, il doit être testé. Plusieurs valeurs et situations sont utilisées afin de vérifier que le résultat correspond à ce qui était prévu.

Pour un programme qui détermine si une personne est majeure, il faut par exemple tester un âge inférieur à 18, un âge égal à 18 et un âge supérieur à 18. Des valeurs inattendues peuvent également être testées afin de vérifier que le programme les traite correctement.

Corriger les erreurs

Les tests peuvent révéler des erreurs appelées bugs. Le débogage consiste à rechercher leur origine, à modifier le programme puis à effectuer de nouveaux tests.

Une erreur peut provenir d'une instruction incorrecte, d'un mauvais calcul, d'une condition mal définie ou d'une situation qui n'avait pas été prévue. Les corrections sont donc suivies de nouveaux tests afin de vérifier le fonctionnement du programme.

Améliorer le programme

Lorsque le programme fonctionne correctement, il peut encore être amélioré. Le code peut être réorganisé, les traitements peuvent être optimisés et de nouvelles fonctionnalités peuvent être ajoutées.

Cette démarche se répète pendant toute la durée de vie d'un logiciel. Une nouvelle fonctionnalité peut nécessiter une modification de l'algorithme, du code et des tests.

La programmation repose ainsi sur une démarche progressive : comprendre le problème, construire une solution, écrire le code, tester, corriger et améliorer. Les langages changent, mais cette méthode et les principaux éléments utilisés pour programmer restent largement communs.

Les langages informatiques

Un langage informatique est un ensemble de règles et de symboles permettant d'écrire des instructions pour un ordinateur. Les programmeurs utilisent ces langages pour décrire les opérations qu'un programme doit effectuer.

Un programme peut par exemple demander à l'ordinateur d'effectuer un calcul, d'afficher un texte, de lire un fichier, de modifier une image ou de transmettre des données sur Internet. Le langage utilisé permet d'exprimer ces opérations sous une forme compréhensible par les programmeurs.

Les ordinateurs ne comprennent cependant pas directement les instructions écrites dans la plupart des langages de programmation. Le processeur exécute des instructions machine représentées sous forme de données binaires. Le code écrit par le programmeur doit donc être transformé pour pouvoir être exécuté.

Du programme au langage machine

Le langage machine correspond aux instructions directement exécutables par un processeur. Elles sont représentées par des suites de bits, donc par des valeurs binaires composées de 0 et de 1.

Écrire directement un programme en langage machine serait extrêmement difficile. Une simple opération nécessiterait de manipuler des suites de valeurs binaires difficiles à mémoriser et à vérifier. Les langages de programmation ont donc été conçus pour permettre d'écrire les instructions sous une forme beaucoup plus lisible.

Le code écrit par un programmeur est ensuite traduit ou exécuté par des logiciels spécialisés. Un compilateur peut transformer un programme en instructions exécutables avant son utilisation. Un interpréteur peut au contraire analyser et exécuter les instructions pendant le fonctionnement du programme. Certains langages utilisent également des systèmes intermédiaires entre ces deux approches.

Par exemple, un programme peut contenir une instruction demandant d'additionner deux nombres. Le programmeur écrit cette opération avec les règles du langage utilisé, puis les outils associés au langage permettent au processeur d'effectuer réellement l'opération.

La syntaxe

Chaque langage possède une syntaxe, c'est-à-dire un ensemble de règles qui déterminent la manière correcte d'écrire les instructions.

La syntaxe précise notamment la façon d'écrire les mots-clés, les nombres, les textes, les parenthèses, les opérateurs et les différentes instructions. Une parenthèse oubliée, un symbole incorrect ou un mot-clé mal écrit peut donc provoquer une erreur de syntaxe.

La syntaxe varie d'un langage à l'autre. Une instruction qui est correcte en Python peut donc être incorrecte en C ou en JavaScript. Les programmeurs doivent respecter les règles propres au langage utilisé.

Les instructions et les données

Un programme manipule des données et exécute des instructions sur ces données. Les données peuvent être des nombres, des textes, des images, des fichiers ou de nombreuses autres informations.

Une variable permet par exemple de conserver une donnée pendant l'exécution d'un programme. Une variable appelée age peut contenir la valeur 12, tandis qu'une variable appelée nom peut contenir un texte.

Les programmes utilisent également des conditions pour choisir une action en fonction d'une situation. Une instruction peut par exemple demander d'afficher un message uniquement lorsque la valeur d'une variable est supérieure à 10.

Les boucles permettent de répéter une série d'instructions. Une boucle peut par exemple demander d'afficher les nombres de 1 à 10 sans écrire dix fois la même instruction.

Les fonctions et les procédures permettent enfin de regrouper plusieurs instructions sous un même nom. Une fonction appelée calculerTotal peut par exemple effectuer plusieurs opérations et fournir le résultat obtenu.

Les principaux langages

Il existe de très nombreux langages de programmation. Ils possèdent des caractéristiques différentes et sont utilisés dans des domaines variés.

  • Python : langage particulièrement utilisé pour l'apprentissage de la programmation, les sciences, l'analyse de données et l'intelligence artificielle.
  • C : langage permettant un contrôle précis des ressources de la machine, notamment utilisé pour les systèmes d'exploitation, les systèmes embarqués et l'électronique.
  • C++ : langage utilisé notamment pour les jeux vidéo, les simulations et les logiciels nécessitant de bonnes performances.
  • Java : langage utilisé dans de nombreuses applications professionnelles et dans différents environnements informatiques.
  • JavaScript : langage très utilisé pour rendre les pages Web interactives et développer des applications exécutées dans les navigateurs.
  • PHP : langage principalement utilisé pour développer des applications et des sites Web exécutés sur un serveur.
  • SQL : langage spécialisé dans la création, la consultation et la modification des données contenues dans des bases de données.

Des langages pour différents usages

Les langages ne sont pas tous conçus pour les mêmes tâches. Le choix dépend notamment du type de programme à réaliser, des performances nécessaires, de l'environnement dans lequel le programme doit fonctionner et des outils disponibles.

Un programme destiné à contrôler directement certains composants électroniques peut par exemple utiliser le langage C. Un programme d'analyse de données peut utiliser Python, tandis qu'une application Web peut associer JavaScript à PHP et SQL.

Un même projet peut donc utiliser plusieurs langages. Un site Web peut par exemple utiliser HTML et CSS pour sa structure et sa présentation, JavaScript pour ses interactions, PHP pour certaines opérations exécutées sur le serveur et SQL pour communiquer avec une base de données.

Apprendre plusieurs langages

Les langages de programmation possèdent des syntaxes différentes, mais ils reposent souvent sur des principes communs. Les variables, les conditions, les boucles et les fonctions se retrouvent sous différentes formes dans de nombreux langages.

La connaissance de ces principes facilite donc l'apprentissage d'un nouveau langage. Un programmeur qui maîtrise déjà les notions fondamentales doit principalement apprendre la nouvelle syntaxe et les particularités du langage.

Il n'existe ainsi pas de meilleur langage de programmation dans toutes les situations. Le langage le plus adapté dépend du programme à réaliser et de son environnement d'utilisation.

↑ Retour en haut

Jeux