Article original : Computer Coding – Computer Program Definition and Code Meaning
Lorsque vous commencez à apprendre à coder, l'une des questions que vous vous posez probablement est "Quel langage devrais-je apprendre en premier ?"
L'une des choses les plus excitantes – et parfois écrasantes – à propos de l'apprentissage de la programmation est la quantité de choses qu'il y a à apprendre.
Mais au lieu de se concentrer uniquement sur l'apprentissage d'une technologie spécifique, il peut également être utile d'apprendre les fondements – les éléments de base. Vous pouvez retirer les couches d'abstraction pour comprendre les principes sous-jacents que toutes les technologies ont en commun.
Comprendre ce qu'est la programmation à un niveau fondamental rendra la résolution de problèmes plus facile et vous donnera une meilleure compréhension de la manière dont différentes technologies fonctionnent sous le capot.
Cet article passe en revue les fondamentaux de la programmation informatique et de ce dont les programmes sont composés, tout en donnant quelques suggestions sur la manière de commencer à faire vos premiers pas dans l'apprentissage de la programmation.
Qu'est-ce que la programmation ? Une définition pour les débutants
La programmation informatique, également connue sous le nom de programmation, est une manière de dire à un ordinateur ce qu'il doit faire.
La programmation est une manière de dire à l'ordinateur comment il doit se comporter globalement – les actions exactes qu'il doit entreprendre et comment les entreprendre de manière efficace.
Plus précisément, la programmation est le processus de création puis de fourniture à l'ordinateur d'un ensemble détaillé d'instructions à exécuter soigneusement dans un ordre séquentiel.
L'ensemble des instructions est appelé un programme ou le code.
Les ordinateurs sont des machines incroyablement intelligentes, mais ils dépendent des humains pour accomplir des tâches.
En résumé, la programmation est l'art de la communication entre les humains et les ordinateurs. Elle nous aide à résoudre des problèmes et à créer de nouveaux outils utiles pour les communautés, tels que des applications ou des sites web, et nous permet d'analyser et de traiter de grandes quantités de données.
Un aperçu du processus de programmation
La programmation est avant tout une question de résolution de problèmes.
Lorsque vous écrivez du code, vous prenez un problème et le décomposez en étapes d'action de plus en plus petites, en utilisant un raisonnement logique, pour finalement aboutir à une conclusion et à une solution.
Les ordinateurs prennent tout au pied de la lettre et prêtent une attention extrême aux détails.
Faire une petite erreur dans votre code – comme une faute de frappe dans un mot, un point-virgule oublié, dire à un ordinateur de répéter une certaine action mais sans lui dire comment et quand arrêter de la répéter – entraînera un message d'erreur.
Ces erreurs sont appelées des bugs dans le code.
Le processus d'identification des erreurs possibles, de recherche de la cause du problème, puis de correction de l'erreur afin que le code fonctionne comme prévu est appelé le débogage.
C'est une partie cruciale de l'écriture de code et de l'apprentissage de la programmation en général.
Pourquoi les algorithmes sont importants en programmation
Déterminer les instructions exactes à donner à l'ordinateur pour qu'il puisse accomplir des tâches spécifiques est la partie la plus difficile de la programmation et de la résolution de problèmes.
Les ordinateurs ne font aucune supposition et font exactement ce qu'on leur dit. Cela signifie qu'il ne doit y avoir aucune ambiguïté dans les instructions qu'ils reçoivent.
Les instructions doivent être définies clairement, avec le bon nombre et l'ordre des étapes que l'ordinateur doit suivre pour résoudre un problème.
L'ensemble des instructions étape par étape, ordonnées pour résoudre des problèmes et pour que l'ordinateur accomplisse chaque tâche est appelé des algorithmes.
Les algorithmes sont des séquences d'actions qui doivent être correctes, efficaces, précises et concises, et ne doivent laisser aucune place à la mauvaise interprétation.
Les algorithmes ne sont pas réservés uniquement aux ordinateurs. Les humains utilisent également des algorithmes au quotidien.
Un exemple de type d'algorithme que nous utilisons fréquemment est le suivi d'une recette de cuisine.
La recette est l'algorithme. Vous devez suivre la série d'étapes de la recette dans le bon ordre pour obtenir le résultat final souhaité.
Comment écrire du pseudocode pour planifier des algorithmes
La manière d'organiser, de planifier à l'avance et d'écrire les étapes à suivre, ou l'algorithme, est d'abord d'écrire du pseudocode.
Le pseudocode est une manière informelle de représenter des algorithmes.
Il n'y a pas de syntaxe spécifique pour le pseudocode. Il est écrit en anglais simple et lisible (ou dans toute autre langue naturelle) en utilisant certains termes techniques.
Le but de l'écrire est uniquement pour que le programmeur comprenne le raisonnement et la logique derrière le code/les étapes à écrire pour résoudre le problème, en utilisant des phrases simples.
Après cela, le programmeur écrit le code qui est réellement exécuté par l'ordinateur.
Le pseudocode est une version simplifiée du code informatique et est la première étape avant l'écriture de tout code informatique.
Par exemple, disons que vous voulez écrire un programme qui demande à l'utilisateur d'entrer son mot de passe et vérifie s'il est égal à '1234'.
Si le mot de passe est égal à '1234', alors vous le laissez entrer dans le système, sinon il sera rejeté.
Une version simple de cela écrite en pseudocode pourrait ressembler à ceci :
mot_de_passe_utilisateur = input: "Veuillez entrer votre mot de passe pour vous connecter : "
si mot_de_passe_utilisateur est égal à '1234'
laissez-le entrer dans le système
sinon
dites-lui qu'il a entré le mauvais mot de passe
Vous pouvez ensuite développer ce code plus tard, au fur et à mesure.
Par exemple, s'ils ont entré le mauvais mot de passe, vous pourriez leur demander à nouveau.
S'ils l'ont entré incorrectement plus de 3 fois, ils seraient rejetés du système.
mot_de_passe_correct = 1234
attempts = 0
tant que les conditions sont vraies
mot_de_passe_utilisateur = input: "Veuillez entrer votre mot de passe pour vous connecter : "
attempts = attempts + 1
si mot_de_passe_utilisateur est égal à mot_de_passe_correct
laissez l'utilisateur entrer dans le système et arrêtez le programme
si mot_de_passe_utilisateur n'est PAS égal à mot_de_passe_correct ET attempts est supérieur à 3
ne laissez pas l'utilisateur entrer et arrêtez le programme
Comment les langages de programmation comblent le fossé de communication entre humains et ordinateurs
Le langage que parlent les ordinateurs
Les ordinateurs, au cœur, ne parlent qu'une seule langue - le binaire ou le langage machine.
C'est un système numérique en base-2, composé de seulement deux nombres possibles : 0 et 1.
Cela s'accorde bien avec le fait que les ordinateurs sont alimentés par l'électricité, qui n'a que deux états possibles : éteint et allumé.
À l'intérieur des ordinateurs, il y a des millions de commutateurs microscopiques, ou transistors, qui contrôlent le flux d'électricité.
Ainsi, essentiellement, les ordinateurs comprennent seulement non et oui.
Les valeurs sont représentées par des transistors étant soit éteints (ou 0 ou non) soit allumés (ou 1 ou oui).
Sous le capot, tout est représenté dans cet état.
Le binaire, ou langage machine, est le niveau le plus bas de langage car il est le plus proche de la machine.
Les instructions sont représentées uniquement en nombres, séquences de 0 et de 1 (également connus sous le nom de chiffres binaires), qui contrôlent directement le CPU de l'ordinateur (Unité Centrale de Traitement). Chaque architecture de machine a son propre langage machine unique.
Ce langage est incroyablement rapide car il n'y a pas besoin de conversion – mais il n'est pas facile à utiliser pour les humains.
Il est sujet aux erreurs et prend du temps.
Le binaire était utilisé dans les premiers jours de l'informatique, mais ces programmes écrits en binaire étaient difficiles à comprendre et à lire.
Il y avait un besoin de langages facilement compris et interprétés à la fois par les humains et les ordinateurs.
Au fil des années, les langages de programmation ont évolué. Ces évolutions sont appelées niveaux, ou générations.
Le binaire est la première génération de langages de programmation (ou 1GL).
À mesure que les langages de programmation ont progressé au fil de l'histoire et que de nouveaux ont été développés, ils ont commencé à ressembler davantage aux langages que les humains utilisent.
Introduction du langage d'assemblage
La deuxième génération de langages de programmation était le langage d'assemblage (2GL), qui était un grand pas en avant et une amélioration dans l'écriture de programmes par rapport à l'utilisation du langage machine.
C'était toujours un langage de très bas niveau, mais l'assemblage a introduit des lettres alphabétiques dans les programmes, autrement connues sous le nom de codes mnémoniques, ce qui a rendu plus facile à comprendre et à utiliser.
En Assemblage, il y a une forte correspondance entre les instructions utilisées dans le langage et l'architecture sous-jacente de l'ordinateur.
Ainsi, il y a une corrélation entre les mnémoniques dans le langage et les instructions binaires natives de la machine.
L'assemblage a introduit un traducteur, appelé un assembleur, pour convertir les programmes écrits en langage machine (puisque c'est le seul langage dans lequel les programmes informatiques peuvent être exécutés).
L'assemblage était plus lisible et plus facile à utiliser et à déboguer, mais il était encore très sujet aux erreurs et fastidieux à écrire.
L'introduction des langages de programmation de haut niveau
Après le langage d'assemblage, les langages de programmation de troisième génération (3GL) sont apparus.
Ils ont ouvert la voie à un nouveau style de programmation, la rendant plus accessible aux gens et s'éloignant davantage du langage natif des machines.
Ces langages étaient appelés langages de haut niveau - c'est-à-dire des langages plus faciles à lire, écrire et comprendre pour les humains, puisqu'ils ressemblent à une manière de type anglais d'écrire.
Ils sont indépendants de la machine, avec plus de niveaux d'abstraction par rapport à la machine.
Des traducteurs appelés compilateurs ont été introduits pour traduire le code que les programmeurs écrivaient dans un tel langage (également connu sous le nom de code source) en code binaire exécutable par la machine.
De tels langages incluaient BASIC, FORTRAN, COBOL, PASCAL, et d'autres qui sont populaires et fréquemment utilisés à ce jour, comme C, C++, Java, et JavaScript.
Les langages de quatrième génération ont suivi (4GL), qui étaient plus rapides et encore plus faciles à utiliser, avec plus de couches d'abstraction par rapport à l'ordinateur. Et ils ressemblaient de plus en plus aux langages humains.
Ils ont augmenté la productivité car les programmeurs n'avaient plus à prendre le temps de dire à l'ordinateur comment résoudre un problème.
Au lieu de cela, ils se sont concentrés sur le fait de dire simplement à l'ordinateur quoi faire, sans les étapes supplémentaires sur comment le faire.
Les langages de quatrième génération incluent des langages de script tels que Python et Ruby, mais aussi des langages de requête, utilisés pour récupérer des données à partir de bases de données, tels que SQL (Structured Query Language).
Enfin, les langages de programmation de cinquième génération (5GL) sont basés sur l'Intelligence Artificielle.
Les ordinateurs sont formés pour apprendre à résoudre des problèmes, sans que le programmeur ait besoin d'écrire des algorithmes.
Certains des langages utilisés incluent Prolog et Mercury.
Pourquoi devriez-vous apprendre à coder ?
La programmation est un outil puissant.
Elle vous permet de résoudre un problème de manière unique et créative et vous donne la chance de donner vie à une idée.
En apprenant à coder, vous pourrez peut-être réaliser un rêve et concrétiser une vision que vous avez.
La programmation vous aide également à comprendre le monde numérique en constante évolution qui vous entoure.
Pratiquement tout ce que vous utilisez au quotidien fonctionne avec du code – que ce soit pour chercher des directions vers une destination particulière, commander des articles en ligne, ou des applications qui suivent les pas que vous avez faits dans la journée.
La programmation est utilisée dans chaque industrie, donc connaître au moins les bases de la programmation vous donnera cet avantage compétitif supplémentaire lorsque vous cherchez un nouveau rôle ou une promotion.
De plus, il n'y a pas de pénurie d'emplois en informatique et en programmation en ce moment. Au contraire, ils sont en croissance et cette croissance ne semble pas ralentir de sitôt (malgré les théories selon lesquelles l'Intelligence Artificielle remplacera éventuellement les programmeurs).
Outre ces raisons d'apprendre à coder, la programmation constitue un nouveau passe-temps amusant et un passe-temps productif.
La programmation est pour tout le monde, peu importe leur âge, leur origine ou où ils en sont dans la vie.
Vous n'avez pas besoin d'un diplôme universitaire de quatre ans pour commencer. Vous pouvez commencer à apprendre gratuitement, depuis le confort de votre propre maison.
Tout le monde peut apprendre à coder s'il le souhaite.
Comment commencer à coder
Il existe de nombreux langages de programmation, et en tant que débutant, il peut être écrasant de choisir le premier à apprendre.
Pour commencer, pensez à un problème que vous voulez résoudre, puis recherchez quelle technologie pourrait vous aider à atteindre votre objectif.
Par exemple, si vous voulez créer un site web personnel, vous ne commenceriez pas par apprendre Java ou C++.
Un bon point de départ pour les débutants pourrait être le suivant :
- HTML (Hyper Text Markup Language), qui est la structure de chaque page web. Il affiche tout type de contenu que vous voyez sur les sites web - du texte, aux liens, images et vidéos.
- CSS (Cascading Style Sheets), qui rend le HTML joli. Il est utilisé pour changer les styles et les couleurs de police des sites web, et également pour rendre un site web réactif et utilisable sur chaque appareil.
- JavaScript, qui ajoute de la fonctionnalité et de l'interactivité aux pages web autrement statiques.
freeCodeCamp propose un programme interactif bien pensé et complet. Il aide les apprenants à faire leurs premiers pas en programmation et les aide à décrocher un emploi avec les nouvelles compétences qu'ils acquièrent.
Consultez la Certification en Design Web Réactif, où vous construirez des projets que vous pourrez ajouter à votre portfolio pour montrer vos compétences à de potentiels employeurs.
freeCodeCamp dispose également d'une chaîne YouTube avec des cours gratuits et complets sur une grande variété de sujets technologiques.
Et il y a aussi la communauté amicale de freeCodeCamp qui peut vous aider lorsque vous êtes bloqué et vous soutenir tout au long de votre parcours de programmation. Assurez-vous donc de participer au forum lorsque vous avez besoin d'aide.
Conclusion
La programmation est une compétence qui ne peut pas être apprise du jour au lendemain, alors ne précipitez pas le processus !
Comme l'apprentissage de toute nouvelle langue, apprendre à coder prend du temps, de la patience, une pratique constante et beaucoup d'essais et d'erreurs.
Comme le cite Beverly Sills, et montré sur freeCodeCamp comme l'une des citations inspirantes :
Il n'y a pas de raccourcis vers un endroit qui vaut la peine d'y aller.
Merci d'avoir lu !