À retenir
- C'est le point d'entrée qui reçoit les instructions de l'utilisateur.
- Il coordonne les échanges entre les données et l'interface.
- Il permet d'organiser le code de manière propre et structurée.
Un contrôleur est un composant qui joue le rôle d'intermédiaire ou de chef d'orchestre dans un système informatique. Imaginez un serveur dans un restaurant : il prend votre commande (l'action de l'utilisateur), la transmet en cuisine (le traitement des données), puis vous apporte votre plat (l'affichage du résultat).
Étymologie
Issu du français « contrôle » (vérifier un registre), le terme a été adopté en informatique pour désigner un élément qui dirige ou régule. Dans le monde du développement, il s'est popularisé avec l'architecture MVC (Model-View-Controller) dès les années 70-80.
Exemples d'usage
- Le contrôleur de domaine dans un réseau d'entreprise qui gère les permissions des utilisateurs.
- Le contrôleur disque (matériel) qui fait le lien entre la carte mère et le disque dur.
- Un contrôleur d'API dans un site web qui reçoit les requêtes du navigateur pour afficher une page de profil.
Cas d'usage
On l'utilise principalement en programmation pour séparer la logique métier du design. Il intervient aussi dans le matériel pour permettre au processeur de communiquer avec des périphériques spécialisés (clavier, écran, stockage).
Bonnes pratiques
En développement logiciel, on recommande d'utiliser des « contrôleurs légers » (thin controllers). Cela signifie qu'il ne doit pas contenir de calculs complexes, mais simplement déléguer le travail aux bons services pour rester facile à maintenir.
Synonymes
Antonymes
Conseil
Si vous apprenez le développement web, visualisez le contrôleur comme un aiguilleur du ciel : il ne pilote pas les avions (les données), il ne construit pas les pistes (l'affichage), mais il s'assure que chaque avion arrive au bon endroit au bon moment.
Questions fréquentes
Quelle est la différence entre un contrôleur et un pilote (driver) ?
Le contrôleur est souvent l'entité logique ou matérielle qui gère un appareil, tandis que le pilote est le logiciel qui permet au système d'exploitation de parler à ce contrôleur.
Un contrôleur est-il obligatoire ?
Pas forcément, mais sans lui, le code devient vite un 'plat de spaghettis' où tout est mélangé et difficile à réparer.