Les définitions à connaître pour devenir développeur·se

Tech août 23, 2021

Nous t’avons préparé un dictionnaire pratique pour que tu puisses te lancer en tant que développeur·se sans être totalement perdu·e et que tu puisses avoir le bon vocabulaire pour communiquer avec tes pairs et surtout connaître les définitions !

Comme tout domaine technique, l’informatique regorge de termes et d’abréviations qui peuvent te sembler incompréhensibles, surtout au début. Pour t’éviter des allers-retours incessants et de multiples recherches Google, nous avons trouvé pratique de réunir ce vocabulaire dans un lexique, pour que tu puisses t’y référer si besoin.

Nous avons rédigé cet article avec l'aide de notre partenaire What The Fabrik, un incubateur numérique accessible partout en France pour favoriser l'égalité des chances.

Savoir communiquer entre pairs, by Tyler Spangler

Place aux définitions pour mieux connaître le monde des développeur·se·s et des passionné·e·s d'informatique !

Agilité / Développement Agile de logiciels

L'agilité est la capacité d’une entreprise à s’adapter à toutes les transformations de son environnement en conservant une continuité stratégique, opérationnelle et humaine. Pour concilier les deux, on peut comparer l'agilité à une course automobile : le pilote doit s’adapter très vite à plusieurs éléments extérieurs tout en restant concentré sur son objectif tout au long de sa course.

En 2001, 17 experts du métier de l'informatique ont proposé des idées pour améliorer les pratiques de développement de l’époque. 4 valeurs ont été formalisées sous la forme du Manifeste pour le développement Agile de logiciels qui se déclinent en 12 principes sous-jascents. Le manifeste est formulé ainsi :

Nous découvrons comment mieux développer des logiciels par la pratique et en aidant les autres à le faire. Ces expériences nous ont amenés à valoriser :

  • Les individus et leurs interactions plus que les processus et les outils ;
  • Des logiciels opérationnels plus qu’une documentation exhaustive ;
  • La collaboration avec les clients plus que la négociation contractuelle ;
  • L’adaptation au changement plus que le suivi d’un plan.

Nous reconnaissons la valeur des seconds éléments, mais privilégions les premiers.

Dans la pratique, on observe que les équipes adoptant un approche agile ont souvent:

  • Une démarche empirique et itérative avec des cycles courts;
  • Différents niveaux de feedback techniques ou humains (les plus courts possibles). Les tests automatisés, l'intégration continue ou encore des rituels de collaboration peuvent en être une concrétisation;
  • Une démarche d'amélioration continue des pratiques et du produit basée sur ces feedbacks;

Pour aller plus loin : Méthodes Agiles - Bien les comprendre pour bien démarrer - Scrum Life 90.

API

Une API, Application Programming Interface en anglais est une interface qui permet d’établir des connexions entre plusieurs logiciels dans le but d’échanger des données. C’est donc comme une sorte de clé pour pénétrer un logiciel qui ne t’appartient pas. Une API est très utile pour les développeur·se·s car elle permet d’utiliser un programme existant, plutôt que d’en re-développer un nouveau depuis le début. Ce concept d'API reflète bien la philosophie qui règne dans le monde des developpeur·se·s : partage et collaboration.

Exemple : dans une application météo, c’est une API qui va aller rechercher les informations dans les bases de données météorologiques d’une autre plateforme pour les afficher directement sur ton application.

Architecture

L'architecture décrit les modèles et les techniques utilisés pour concevoir et créer un logiciel ou une application. Elle définit aussi comment les différentes briques d’un ou plusieurs logiciels s’articulent ensemble. Elle fournit la feuille de route ainsi que les meilleures pratiques à suivre pour créer une application ou un logiciel bien structuré. En quelque sorte, c’est un mode d'emploi à suivre.

Asynchrone

Dans une opération asynchrone, l'émetteur du message n’a pas besoin d’attendre le récepteur de celui-ci pour continuer son travail. La programmation asynchrone permet de laisser se réaliser un programme tout en effectuant d’autres travaux en même temps. Le résultat de l’opération peut être récupéré plus tard pour être traité. Par exemple, le dépôt du courrier dans une boîte à lettre électronique est asynchrone : il peut être récupéré plus tard par le récepteur du message.

Back-End

Le Back-End correspond à toutes les actions informatiques, que l’utilisateur ne verra pas directement sur le logiciel, mais qui provoquent un résultat qui lui est visible. C'est la partie immergée de l'iceberg, que seul·e·s les développeur·se·s connaissent ! Pour faire une analogie, dans un restaurant, c’est tout ce qui se passe “en cuisine”.

Encore un mot omniprésent dans le vocabulaire des développeur·se·s !

Bibliothèque

Une bibliothèque est une collection de fonctions utilitaires qui te permet de reprendre les codes créés par d’autres développeur·se·s pour les réutiliser et éviter d’en recréer. C’est plutôt pratique pour toi ! On peut aussi parler de "librairies".

Client-Serveur  

Comme son nom l’indique, un serveur a pour but de prendre les commandes (ou requêtes) d’un client et de retourner des données ou le résultat d’un calcul au client. A la différence d’un serveur de café, un serveur est en général un logiciel qui tourne en permanence sur un ordinateur distant et qui est prêt à prendre des commandes en permanence.  Un client peut être un autre logiciel (ex. une application mobile, un navigateur web). Il peut y avoir des clients différents qui interrogent le même serveur. Le serveur fait partie du modèle de transaction “Client-serveur”.

Un vocabulaire haut en couleurs, by Esty

Code source

Le Code Source correspond à la version d’un programme que tu peux comprendre en tant que développeur·se. Pour faire simple, le Code Source représente l’ensemble des instructions du programme, qui sont rédigées dans un langage de programmation créé et maîtrisé par les développeur·se·s. C’est comme une “recette de cuisine”, sauf que c’est l’ordinateur qui cuisine le plat pour toi !

Compilation

Une compilation est la génération du code exécutable par une machine, c’est-à-dire le code uniquement compréhensible par l’ordinateur. La compilation agit comme un interprète, comme lorsque tu veux te faire comprendre par des personnes qui ne parlent pas la même langue que toi. L’interprète va traduire ce que tu dis (ici le code source), dans une langue que tu ne maîtrises pas, à une personne qui ne comprend que cette langue (ici l'ordinateur).

CTO

Le CTO, Chief Technical Officer, ou Directeur des Nouvelles Technologies en Français, est le rôle d’une personne au sein d’une organisation qui a pour fonction d’orienter la stratégie de l'utilisation d'outils technologiques dans une organisation afin de permettre à celle-ci de réaliser ses objectifs. Il est donc en charge de l’innovation, du déploiement technique et technologique adaptés au développement d’une entreprise.

C'est un métier qui représente vraiment l'essence de la curiosité des développeur·se·s, dans le sens où cette personne doit en permanence connaître les nouvelles évolutions tech.

Déploiement logiciel

Le déploiement est l’une des étapes de création d’un logiciel. Déployer un logiciel consiste à le mettre à disposition de son public. Pour une application web, par exemple, il s’agit souvent d’installer une nouvelle version de celle-ci (nouvelles fonctionnalités, corrections, …) sur le serveur qui l'héberge. L’action de déployer peut être faite de façon manuelle (ex. copie de fichier) ou peut être automatisée partiellement (ex. mise à jour de la version de wordpress) ou complètement (ex. déploiement continu).

C'est un mot de vocabulaire qui représente la satisfaction des développeur·se·s qui peuvent enfin voir leur travail se déployer auprès des utilisateurs !

DevOps

La philosophie “DevOps” vise à unifier les pratiques de la création du logiciel (Développement) et celles de l’administration des infrastructures informatiques (Operation, ou Exploitation). La philosophie DevOps promeut l’automatisation et le suivi des différentes étapes de création d’un logiciel. L’objectif est de réduire la durée des cycles de développement, d’augmenter la fréquence des déploiements et de permettre la livraison en continu. DevOps incite ainsi à des rôles un peu plus “multi-casquettes” qui ont des compétences qui viennent des pratiques de développement (programmation, intégration continue…) mais aussi des pratiques d’exploitation (administration système, scripts, monitoring, déploiement) et de support.

Éditeur de code

Un éditeur de code est un programme d'édition de texte, outil de rédaction, conçu pour éditer le code d’un programme informatique. Tout comme un traitement de texte est un éditeur de texte qui apporte des fonctionnalités spécifiques à la rédaction (mise en page, correction orthographique…), un éditeur de code apporte ses spécificités au développement de code (coloration syntaxique, validation du code, auto-complétion…).

Framework

Un framework est une boîte à outils pour les développeur·euse·s dans laquelle ils·elles peuvent piocher. Comme son nom l'indique en anglais, c'est un "cadre de travail". On y trouve des fonctions déjà toutes faites, des composants autonomes, ceci dans le but de développer plus rapidement, d'optimiser et d'améliorer la productivité. A la différence d’une bibliothèque, le framework accompagne beaucoup plus le développement en proposant une approche intégrée et des outils “pré-câblés” ensemble.

Front-End

Le Front-End correspond à toute la partie des actions informatiques visibles par l’utilisateur sur le logiciel : le design, les animations, les couleurs.  C'est tout ce qui se passe sur scène : la partie visible de l'iceberg cette fois-ci.

Encore une fois, tu vas beaucoup entendre ce mot de vocabulaire si tu te prédestines à devenir développeur·se !

Utiliser le même vocabulaire, by Tyler Spangler

Git

Un Git est un système de contrôle de version, donc un outil logiciel qui permet aux développeur·se·s de travailler plus rapidement et plus intelligemment, en gérant les modifications apportées sur le code source au fil du temps. C’est ton assistant lorsque tu programmes ! Cela permet aussi un travail en collaboration. C’est sur ce système que le code source est sauvegardé. A la différence d’un système de stockage classique, un système de contrôle de version permet de pouvoir à tout moment retrouver toutes les modifications passées (historique) d’un fichier. C’est un peu similaire à ton relevé de compte bancaire (tu peux voir les différentes opérations qui ont eu lieu).

Hello World

"Hello World" c’est tout simplement les mots traditionnels écrits par un programme informatique afin que tu puisses observer l’exécution de celui-ci sans erreurs. C’est en général le premier programme que tu écris pour vérifier le fonctionnement d’un langage de programmation.

HTML

L’HTML signifie HyperText Markup Language. C'est donc un langage de balisage d’hypertexte, c'est-à-dire un langage informatique descriptif qui te permet de lire les différents contenus d’une page web. L’HTML est le code utilisé pour structurer une page web et son contenu.

HTTP

HTTP signifie Hypertext Transfer Protocol est le protocole de transfert hypertexte. C'est un des protocoles de communication utilisé entre un navigateur web et un serveur web qui fonctionne sur le principe « requête-réponse ». Ainsi, à chaque fois que tu fais une recherche sur un navigateur, tu envoies une requête à un serveur web, qui peut se modéliser par la recherche d’un document par exemple. Et le serveur web cherche les réponses dont tu as besoin et te répond en te renvoyant ce que tu lui as demandé par le biais de cette communication.

Intégration web

L'intégration est le fait de développer des sites web, en passant par toute la chaîne de production, tout en respectant des règles de comptabilité définies par des normes : celles du World Wide Web Consortium.

Eh oui, les développeur·se·s doivent penser à tout, donc ce mot de vocabulaire est à retenir !

iOS

iOS est le système d’exploitation mobile développé par Apple sur la plupart de leurs produits : Iphone, Ipad… Il est uniquement installé sur les produits Apple, en clair ils sont indépendants. Pour coder des produits iOS on utilise bien souvent le langage swift.

Langage informatique

On définit le langage informatique comme un langage qui a pour fonction de décrire l’ensemble des actions qu’un ordinateur va exécuter. Ça te permet de donner des instructions à ton ordinateur ! C’est similaire à une consigne d'exercice. Tout comme il existe beaucoup de langages humains, il existe des langages informatiques différents pour répondre à des besoins différents. Exemples de langages informatiques courants : PHP, Javascript, Typescript, Java, C#, C++, SQL, python...

Onboarding

C’est tout ce qui est mis en oeuvre pour accueillir un nouvel arrivant sur un projet ou dans une organisation. Un bon onboarding permet à un·e développeur·se de commencer à travailler rapidement et efficacement et de se sentir inclu·e·s dans un collectif. On retrouve en général dans l’onboarding la mise à disposition des outils (ordinateur, logiciels), des guides, des accompagnements (démo, immersion, entretiens…) ou de l’automatisation.

Open Source

Un logiciel open source est un code qui est façonné de manière collaborative et soumis à un examen par des pairs, en communauté. Il est conçu pour être accessible à tous les publics et amené à être modifié et distribué à l’infini.

Linux

Linux est un système d’exploitation du même type que Windows sauf qu’il est libre et s’accompagne de logiciels libres. Il est multitâche, multiplateforme et multi-utilisateur. Il peut être utilisé autant sur des serveurs que sur des PC ou des téléphones de type smartphones.

Tu peux le télécharger sur internet, sous différents noms et gratuitement, comme Debian ou Ubuntu.

Logiciel libre

Il y a très peu de distinction entre l'Open Source et le Logiciel Libre car l’Open Source comme le Logiciel Libre proviennent tous les deux de licences libres, à quelques exceptions près, qui sont importantes pour la Free Software Foundation (FSF) et l'Open Source Initiative (OSI). Dans les faits, il s’agit d’un logiciel qui peut être modifié, utilisé et redistribué sans restriction particulière. Cela permet à ces logiciels d’être toujours réévalués, adaptés et corrigés, ce qui les rends assez puissants.

Logiciel propriétaire

A la différence d’un logiciel libre, un logiciel propriétaire est un logiciel qui a un propriétaire, c’est à dire une personne ayant des droits de propriété intellectuelle sur le code établi. Il est aussi appelé “logiciel à code source fermé”. Seul le propriétaire a l’autorisation de modifier, de reproduire, de distribuer ce code. Ce propriétaire est soit une entreprise, soit une personne physique.

Par exemple, le logiciel Microsoft Word est un logiciel propriétaire, nous ne pouvons pas l’ouvrir et exploiter son code à notre guise.

Responsive

Une conception de site web responsive permet d’avoir une expérience optimale du même site pour des appareils très variés (écran d’ordinateur, smartphone, tablette). A la différence d’un site dédié ou d’une application native, le site responsive est le même quel que soit l’appareil utilisé. Afin de servir au mieux ces différents appareils, le site adapte par exemple son contenu en fonction de la taille et de l' orientation de l’écran (en général à l’aide de “Media Queries CSS3”). C’est ainsi qu’un site apparaissant sur 3 colonnes pour un ordinateur, pourra apparaître sur une seule colonne sur un smartphone.

Revue de code

Une revue de code est une discussion bienveillante entre plusieurs développeur·se·s afin de s’assurer que le code source qui a été écrit par l’un·e d’entre eux·elles ne comporte pas de d’erreurs. C’est très souvent une bonne occasion de trouver des problèmes qui n’ont pas été détectés plus tôt. C’est aussi un moment social privilégié pour poser des questions, apprendre et transmettre des bonnes pratiques et des connaissances sur le travail en cours. Les revues de code permettent de s’assurer que le code est connu par le plus grand nombre de personnes dans l’équipe (et ainsi pouvoir partir en vacances sereinement en sachant que les collègues pourront continuer de travailler sur le produit). Les revues de code permettent ainsi d’améliorer la qualité du code et de l’architecture logicielle avant que le code ne soit déployé.

Stack technique

Quand on parle de stack technique d'une entreprise, cela signifie les langages utilisés, les serveurs, les bibliothèques.

Stand-up meeting

Le stand-up meeting (aussi appelé “daily”) est un point de synchronisation quotidien très court (5-10min) qui a principalement pour but d’observer les progrès qui sont faits et de s’assurer qu’aucun membre d’une équipe de développement n’a de blocage majeur. Il est recommandé de participer à ce rituel debout afin de provoquer l’inconfort pour qu’il reste court et à propos. Ce point est une occasion pour les membres de l’équipe de communiquer et ne doit pas être pris pour un reporting au management ou aux parties prenantes.  

Système d’exploitation

Un système d’exploitation (ou Operating System, ou OS) est un logiciel qui permet de faire le lien entre le matériel (ou Hardware) et les logiciels (ou Software) d’un ordinateur. Parmi le matériel on peut trouver entre autres la carte mère, le microprocesseur, la mémoire vive, le disque dur, une carte Wifi et des périphériques tels que le clavier, la souris. Des logiciels tels qu’un traitement de texte, un navigateur web, un jeu sont installés sur le système d’exploitation et peuvent être exécutés par l’intermédiaire de ce dernier en s’appuyant sur les composants matériels de l’ordinateur.

Variable

Un variable est une façon de stocker temporairement une valeur ou le résultat d’un calcul dans un programme informatique. C’est comme une boite avec une étiquette dans laquelle on va mettre un objet pour pouvoir le réutiliser plus tard. En utilisant des variables, et en les nommant avec soin, on peut améliorer la lisibilité du code source et éviter d’avoir trop de choses dans la tête en même temps.

Web

Web ou World Wide Web est un système fonctionnant sur internet qui permet de consulter des pages sur des sites à l’aide d’un navigateur Web.

Windows

Windows est un lot de systèmes d’exploitation produit par l’entreprise Microsoft. Il permet d’équiper les ordinateurs personnels pour qu’ils soient utilisables par les utilisateur·trice·s mais aussi les serveurs et les portables, tablettes, etc...

Les systèmes d’exploitation confectionnés par Windows sont des programmes qui permettent principalement de manipuler l’ordinateur et permet à des logiciels de type application d’offrir des services en rapport avec l’utilisation de l’ordinateur.

Comprendre la tech et créer le monde de demain, by Behance.

On espère que ce petit dico version web te donnera tout le vocabulaire qu'il te faut pour évoluer dans l'univers de l'informatique et devenir un·e développeur·se· hors pair ;)

A côté, les développeur·se·s s'informent souvent, on te conseille donc de suivre ce TOP 8 des blogs pour faire une bonne veille tech et ces comptes Twitter pour être tenu au courant des actualités tech.

Et si le code t'intéresse et que tu souhaites te lancer en tant que développeur·se, n'hésite pas à télécharger notre brochure de présentation ou à candidater directement sur notre site.

À propos d'Ada Tech School

Ada Tech School est une école d’informatique d’un nouveau genre. Elle s’appuie sur une pédagogie alternative, approchant le code comme une langue vivante, ainsi que sur un environnement féministe et bienveillant. Elle doit son nom à Ada Lovelace qui fut la première programmeuse de l’histoire.

L’école est située à Paris et accueille chaque promotion pour deux ans. Après neuf mois de formation les étudiants sont opérationnels et prêts à réaliser leur apprentissage - rémunéré - pendant douze mois dans une des entreprises partenaires de l’école comme Trainline, Deezer, Blablacar ou encore Botify. Aucun pré-requis technique n’est exigé pour candidater. Il suffit d’avoir plus de 18 ans. La sélection se fait en deux temps : formulaire de candidature puis entretien avec une réponse sous 2 semaines.



Victor Chetelat

Chargé de Contenus

Super ! Vous vous êtes inscrit avec succès.
Super ! Effectuez le paiement pour obtenir l'accès complet.
Bon retour parmi nous ! Vous vous êtes connecté avec succès.
Parfait ! Votre compte est entièrement activé, vous avez désormais accès à tout le contenu.