Proto (Protocol Buffers) — fichier .proto
stableFichier texte définissant la structure de données pour Protocol Buffers, le format de sérialisation de Google.
Un fichier .proto définit, dans un langage de description d’interface (IDL) texte, la structure des messages que Protocol Buffers pourra ensuite sérialiser en un format binaire compact — c’est le plan de construction, pas la donnée sérialisée elle-même.
Ce format n’a aucune signature binaire : c’est du texte source, une définition de schéma lisible qu’un compilateur (protoc) transforme ensuite en code pour de nombreux langages de programmation.
Il ne faut pas confondre le fichier .proto (texte, définition de schéma) avec les données binaires sérialisées qu’il permet de produire : ces dernières disposent d’un type MIME officiellement enregistré à l’IANA (application/protobuf, RFC 9996), mais ce type ne s’applique pas au fichier .proto source lui-même, qui reste hors du champ de cet enregistrement.
Chaque champ défini dans le fichier .proto porte un numéro unique qui, une fois le message sérialisé, sert d’identifiant compact dans le flux binaire — un mécanisme qui permet d’ajouter ou de retirer des champs entre deux versions d’un même schéma sans casser la compatibilité avec les messages déjà sérialisés.
Le compilateur protoc génère automatiquement, à partir de ce seul fichier texte, du code source typé dans le langage cible (Java, Python, Go, C++…), évitant à un développeur d’écrire manuellement du code de sérialisation répétitif et propice aux erreurs.
Le framework gRPC de Google va plus loin en utilisant le même fichier .proto pour définir, en plus de la structure des messages échangés, les méthodes de service disponibles pour un appel de procédure distant (RPC) — un seul fichier source suffit ainsi à générer à la fois le client et le serveur d’une API dans des langages différents.
Signature binaire
Ce format n'a pas de signature binaire fiable : il ne peut pas être identifié de façon certaine par ses seuls premiers octets.
Vérifier qu'un fichier porte bien cette signature →
Questions fréquentes
Comment ouvrir un fichier .proto ?
Visual Studio Code (avec extension) permet d'ouvrir gratuitement un fichier .proto. Voir la liste complète des logiciels compatibles ci-contre.
Quel est le type MIME du format Proto (Protocol Buffers) ?
Le type MIME du format Proto (Protocol Buffers) est text/plain.
Le format Proto (Protocol Buffers) (.proto) est-il encore utilisé aujourd'hui ?
Oui, le format Proto (Protocol Buffers) est stable et toujours largement utilisé, sans signe de déclin.
Peut-on ouvrir un fichier .proto sur mobile, sans installer d'application ?
Oui : Visual Studio Code (avec extension) fonctionne directement depuis le navigateur d'un smartphone ou d'une tablette, sans application dédiée à installer.
Pourquoi mon fichier .proto ne s'ouvre-t-il pas ?
Les causes les plus fréquentes sont l'absence de logiciel compatible installé, un téléchargement ou un transfert incomplet, ou une extension qui ne correspond plus au contenu réel du fichier. Voir le guide complet sur les causes possibles, ou vérifier le format réel avec l'identifieur de fichier.
Un fichier ne s'ouvre pas : les causes possibles →
Comment savoir si un fichier est corrompu →
Sources
Dernière mise à jour :