<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hardening consulting (Articles sur protobuf)</title><link>https://www.hardening-consulting.com/</link><description></description><atom:link href="https://www.hardening-consulting.com/categories/protobuf.xml" rel="self" type="application/rss+xml"></atom:link><language>fr</language><lastBuildDate>Tue, 18 Feb 2025 22:51:03 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Utiliser du protobuf en python</title><link>https://www.hardening-consulting.com/posts/20131130utiliser-du-protobuf-en-python.html</link><dc:creator>David FORT</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;img class="alignright" alt="binary" src="https://www.hardening-consulting.com/wp-content/uploads/2013/11/binary.jpg" width="192" height="144"&gt;&lt;/p&gt;
&lt;p&gt;Dans le cadre du projet FreeRDS, j'ai eu à créer un petit programme bouchon faisant office 
de SessionManager pour tester des développements. La communication entre FreeRDS et le SessionManager 
se fait en protocol buffer, j'ai donc regardé du coté du binding python.&lt;/p&gt;
&lt;h2&gt;Protobuf&lt;/h2&gt;
&lt;p&gt;Rien de magique dans protobuf, il s'agit juste d'une (nième?) manière standardisée de sérializer des données. 
Je vais faire mon vieux de la vieille mais ça ressemble quand même furieusement à du CORBA sans la partie réseau 
(ce qui est d'ailleurs un peu embêtant, nous verrons ça plus tard). 
On décrit des messages dans un fichier &lt;em&gt;.proto&lt;/em&gt;, on passe un compilateur dessus qui va générer du code pour 
lire et écrire les messages. Le truc bien c'est que le compilateur propose plein de langages de sortie.&lt;/p&gt;
&lt;h2&gt;En pratique&lt;/h2&gt;
&lt;p&gt;C'est bien beau de pouvoir écrire des messages mais si vous êtes sur ce blog, vous vous doutez bien 
que c'est pour transporter des paquets sur le réseau. Voici donc quelques extraits de code python&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.hardening-consulting.com/posts/20131130utiliser-du-protobuf-en-python.html"&gt;Lire la suite…&lt;/a&gt; (Il reste encore 1 min. de lecture)&lt;/p&gt;&lt;/div&gt;</description><category>développement</category><category>protobuf</category><category>python</category><guid>https://www.hardening-consulting.com/posts/20131130utiliser-du-protobuf-en-python.html</guid><pubDate>Fri, 29 Nov 2013 23:32:26 GMT</pubDate></item></channel></rss>