Un objet de transfert de données (DTO, Data Transfer Object) est un objet qui transporte des données entre des processus. Il permet de faciliter la communication entre deux systèmes (comme une API et votre serveur) sans risquer d’exposer des informations sensibles.
Les DTO constituent des solutions familières pour les professionnels possédant une certaine expérience en programmation. Si vous êtes développeur, vous savez de quoi il s’agit et comment ils fonctionnent. Pour un utilisateur lambda, les concepts sous-jacents sont nettement moins évidents.
Nous allons faire de notre mieux pour vous les expliquer le plus simplement possible, mais nous devrons tout de même aborder quelques points assez techniques pour décrire leur fonctionnement.
Qu’est-ce qu’un DTO ?
Comme mentionné précédemment, DTO est l’acronyme de Data Transfert Object, ou objet de transfert de données en français. Comme son nom l’indique, un DTO est un objet conçu pour transférer des données.
Les DTO sont utilisés dans les environnements en langage de programmation orientée objet (OOP, Object-Oriented Programming) comme Python, C++ et Java. Ils sont faciles à développer et à mettre à jour.
Les environnements OOP reposent sur un système d’« appels ». Chacun d’entre eux est un peu comme une recherche de données : leur exécution nécessite du temps et une vitesse de traitement suffisante. Si vous n’êtes pas vigilant, les appels peuvent également exposer des données sensibles dont vous aimeriez préserver la confidentialité, comme les suivantes :
- Adresses de collaborateurs
- Numéros de compte
- Numéros de sécurité sociale
- Identifiants d’entreprise
Comme l’explique un programmeur, vous pouvez avoir besoin du nom et de la photo d’un collaborateur pour lui accorder l’accès à votre entreprise. Vous devez fournir ces données pour obtenir une correspondance, mais vous n’avez pas besoin de transmettre d’autres informations sur le collaborateur qui figurent dans votre base de données. Un DTO peut transférer uniquement les informations requises.