BUT Informatique study materials
BUT Informatique study resources

BUT Informatique key terms

BUT Informatique · Get comfortable with the vocabulary.

encapsulation

Principe orienté objet qui regroupe les données et les traitements dans une classe et n'expose que ce qui est nécessaire via une interface publique, en masquant les détails internes d'implémentation aux autres composants du programme.

Related: héritage, polymorphisme, interface
héritage

Mécanisme par lequel une classe dérive d'une autre et récupère ses attributs et méthodes, ce qui favorise la réutilisation du code mais peut créer un couplage fort si la hiérarchie est mal conçue.

Related: encapsulation, polymorphisme, classe abstraite
polymorphisme

Capacité d'un même appel de méthode à produire des comportements différents selon le type réel de l'objet à l'exécution, souvent via la redéfinition de méthodes dans des sous-classes.

Related: héritage, interface, encapsulation
interface

Contrat qui déclare un ensemble de signatures de méthodes sans fournir d'implémentation, et qu'une classe s'engage à respecter, ce qui permet de découpler les composants et de faciliter les tests par substitution.

Related: polymorphisme, injection de dépendances
classe abstraite

Classe qui ne peut pas être instanciée directement et qui sert de base commune à des sous-classes, souvent en déclarant des méthodes abstraites que chaque sous-classe doit implémenter.

Related: héritage, interface
injection de dépendances

Technique où un objet reçoit ses collaborateurs de l'extérieur plutôt que de les créer lui-même, ce qui réduit le couplage, facilite les tests unitaires et permet de changer d'implémentation sans modifier le code appelant.

Related: interface, test unitaire, couplage
test unitaire

Test automatisé qui vérifie le comportement d'une petite unité de code isolée, comme une méthode, en contrôlant ses sorties et ses effets pour détecter rapidement les régressions lors des modifications.

Related: injection de dépendances, intégration continue, couverture de tests
couplage

Degré de dépendance entre deux modules ou classes : un couplage faible rend les composants plus faciles à modifier, à tester et à réutiliser séparément, tandis qu'un couplage fort propage les changements.

Related: cohésion, injection de dépendances
cohésion

Mesure de la pertinence des éléments regroupés dans un même module : une cohésion forte signifie que chaque composant participe à une responsabilité unique et clairement identifiable.

Related: couplage, principe de responsabilité unique
complexité algorithmique

Évaluation de la quantité de ressources, temps ou mémoire, consommée par un algorithme en fonction de la taille des données d'entrée, exprimée généralement en notation grand O.

Related: notation grand O, mémoïsation
notation grand O

Notation mathématique qui décrit la croissance asymptotique d'une fonction, par exemple O(n log n) pour un tri efficace, en ignorant les constantes et les termes de plus faible ordre.

Related: complexité algorithmique, index de base de données
mémoïsation

Optimisation qui stocke les résultats déjà calculés d'une fonction pour les réutiliser lors d'appels identiques, transformant parfois un algorithme exponentiel en algorithme polynomial au prix d'une consommation mémoire.

Related: complexité algorithmique, cache
cache

Stockage temporaire de données coûteuses à recalculer ou à récupérer, placé plus près de l'utilisateur que la source d'origine, avec une politique d'expiration ou d'éviction pour limiter l'obsolescence.

Related: mémoïsation, CDN
index de base de données

Structure auxiliaire, souvent un arbre B, qui accélère la recherche de lignes selon une ou plusieurs colonnes en évitant un parcours complet de la table, au prix d'espace disque et de ralentissement des écritures.

Related: plan d'exécution, normalisation
plan d'exécution

Description produite par le SGBD de la stratégie choisie pour exécuter une requête, indiquant les parcours d'index, les jointures et les tris, et servant à diagnostiquer les requêtes lentes.

Related: index de base de données, jointure
normalisation

Démarche de conception d'un schéma relationnel qui répartit les données en tables pour éliminer les redondances et les anomalies de mise à jour, en respectant des formes normales successives.

Related: clé étrangère, intégrité référentielle
clé étrangère

Colonne ou ensemble de colonnes qui référence la clé primaire d'une autre table afin de matérialiser une relation et de faire respecter la cohérence entre les enregistrements liés.

Related: intégrité référentielle, normalisation, jointure
intégrité référentielle

Contrainte garantissant qu'une valeur de clé étrangère correspond toujours à une ligne existante dans la table référencée, ou est nulle, empêchant les références orphelines.

Related: clé étrangère, transaction
jointure

Opération relationnelle qui combine les lignes de deux tables selon une condition de correspondance, interne lorsque seules les lignes appariées sont conservées, externe lorsqu'on garde aussi les lignes sans correspondance.

Related: clé étrangère, plan d'exécution
transaction

Ensemble d'opérations sur une base de données qui doit être exécuté comme une unité indivisible, en respectant les propriétés d'atomicité, de cohérence, d'isolation et de durabilité.

Related: intégrité référentielle, verrou
verrou

Mécanisme de contrôle de concurrence qui empêche plusieurs transactions de modifier simultanément la même donnée, au risque d'entraîner des attentes ou des interblocages si les ordres d'accès diffèrent.

Related: transaction, interblocage
interblocage

Situation où deux transactions ou processus s'attendent mutuellement en détenant chacun une ressource nécessaire à l'autre, ce qui bloque leur progression tant qu'une stratégie de détection ou d'évitement n'intervient pas.

Related: verrou, transaction
ORM

Couche logicielle qui fait correspondre des objets du langage de programmation à des tables relationnelles, automatisant la génération des requêtes mais pouvant masquer des problèmes de performance.

Related: index de base de données, plan d'exécution
API REST

Style d'architecture d'interface réseau qui expose des ressources identifiées par des URI et manipulées par les méthodes HTTP, avec des échanges généralement sans état entre client et serveur.

Related: HTTP, idempotence, authentification
HTTP

Protocole applicatif de type requête-réponse utilisé pour transférer des ressources sur le Web, défini par des méthodes, des en-têtes, des codes de statut et un corps de message optionnel.

Related: API REST, idempotence, TLS
idempotence

Propriété d'une opération dont l'exécution répétée produit le même état final qu'une exécution unique, ce qui permet de rejouer une requête en cas d'erreur réseau sans effet de bord supplémentaire.

Related: API REST, HTTP
TLS

Protocole de chiffrement qui sécurise les échanges entre client et serveur, assure la confidentialité et l'authenticité du serveur par certificat, et constitue la base du HTTPS.

Related: HTTP, authentification, pare-feu
authentification

Processus qui vérifie l'identité déclarée d'un utilisateur ou d'un service, par mot de passe, certificat ou jeton, avant d'autoriser l'accès aux ressources protégées.

Related: autorisation, TLS, API REST
autorisation

Processus qui détermine les actions qu'une identité authentifiée est habilitée à effectuer sur une ressource, souvent selon des rôles ou des règles de politique d'accès.

Related: authentification, principe du moindre privilège
principe du moindre privilège

Règle de sécurité consistant à n'accorder à chaque compte ou processus que les droits strictement nécessaires à sa tâche, afin de limiter l'impact d'une compromission ou d'une erreur.

Related: autorisation, pare-feu
pare-feu

Dispositif matériel ou logiciel qui filtre le trafic réseau entrant et sortant selon des règles définies, afin d'isoler des zones de confiance et de bloquer les connexions non souhaitées.

Related: principe du moindre privilège, TLS
DNS

Système hiérarchique et distribué qui traduit des noms de domaine lisibles en adresses IP, en s'appuyant sur des serveurs faisant autorité et sur un cache pour accélérer les résolutions.

Related: HTTP, CDN
CDN

Réseau de serveurs répartis géographiquement qui met en cache et sert des contenus au plus près des utilisateurs, réduisant la latence et la charge sur les serveurs d'origine.

Related: cache, DNS
conteneur

Unité d'exécution isolée qui embarque une application et ses dépendances, partageant le noyau du système hôte, ce qui la rend plus légère qu'une machine virtuelle à déployer.

Related: intégration continue, déploiement continu
intégration continue

Pratique d'équipe consistant à fusionner fréquemment les modifications dans une branche commune et à lancer automatiquement compilation et tests, afin de détecter tôt les incompatibilités.

Related: test unitaire, déploiement continu, revue de code
déploiement continu

Automatisation qui installe en production chaque version validée par la chaîne d'intégration, sans intervention manuelle, ce qui exige des tests fiables et un retour arrière rapide.

Related: intégration continue, conteneur
revue de code

Lecture critique d'une modification par un ou plusieurs pairs avant sa fusion, visant à détecter les défauts, partager la connaissance et faire respecter les conventions de l'équipe.

Related: intégration continue, gestion de version
gestion de version

Organisation du suivi des modifications du code au moyen d'un outil comme Git, avec des commits, des branches et des fusions qui permettent de revenir en arrière et de travailler en parallèle.

Related: revue de code, intégration continue
méthodologie agile

Approche de conduite de projet fondée sur des itérations courtes, la livraison régulière de valeur et l'adaptation aux retours, avec des rituels comme la revue et la rétrospective.

Related: backlog, sprint, revue de code
backlog

Liste ordonnée et évolutive des besoins d'un produit, exprimés généralement en récits utilisateurs, que l'équipe estime et sélectionne progressivement pour alimenter les itérations.

Related: sprint, méthodologie agile
sprint

Itération de durée fixe, souvent deux à quatre semaines, pendant laquelle une équipe réalise un ensemble d'éléments du backlog et produit un incrément potentiellement livrable.

Related: backlog, méthodologie agile
principe de responsabilité unique

Règle de conception selon laquelle une classe ou un module ne doit avoir qu'une seule raison de changer, ce qui renforce la cohésion et simplifie la maintenance et les tests.

Related: cohésion, couplage