Qu’est-ce qu’un composant logiciel ? Artboard


Composant, objet et système sont tous des termes qui ont des significations spécifiques différentes selon les contextes.

Un système est un terme générique utilisé pour décrire un mécanisme/une technologie/une conception/... qui fonctionne pour servir un ensemble de fonctions.


Un composant est un sous-système.

Un objet est juste un objet.

Une voiture est un système. Ce système comporte des composants tels que le moteur, les sièges et le tableau de bord. Une voiture est un objet et certains de ses composants sont aussi des objets.

Le moteur de la voiture est un composant de la voiture et aussi un système à lui seul. C'est aussi un objet.

La circulation est un système avec des composants tels que les routes, les règles, les panneaux, les voitures, les passagers, les conducteurs, les piétons, etc.

Chaque logiciel/application est un système et possède différents composants. Du point de vue d'un designer UX, les composants d'un système logiciel peuvent être sa navigation, ses différentes sections, ses formulaires et ses écrans. Du point de vue d'un architecte logiciel, ce système comporte des composants principaux tels que le front-end et divers services back-end. Du point de vue d'un développeur, ce système a différents composants tels que des bibliothèques et des classes.

Le terme objet, dans les logiciels, est utilisé pour tout ce qui est en mémoire. Un int en C ou une instance d'une énorme classe en Java sont tous deux des objets. L'approche orientée objet ajoute certaines contraintes sur la façon de définir, d'initialiser et d'accéder aux objets dans un programme et ces ajouts surchargent naturellement la signification du terme objet en conséquence.

Il existe différentes significations spécifiques du terme composant comme vous le voyez dans d'autres réponses à cette question. Pour un développeur web, un composant web est un élément de logiciel qui peut être ajouté à un document HTML sans provoquer de conflits avec le document hôte/cible. Pour un autre framework/plateforme/système, un composant peut signifier autre chose.

En bref, vous pouvez obtenir cent réponses différentes à la question "qu'est-ce qu'un composant ?" si vous demandez à cinquante développeurs différents. Au-delà de toutes ces significations surchargées sur différents systèmes, un composant n'est toujours qu'un sous-système.