Rustの勉強中いきなり出てきたシリアライズ
とデシリアライズ
何それ!?
調べてみても、わかりやすい用語の説明はあまりヒットせず、「~シリアライズのやり方~」的な内容しか出てこなかった...
この記事では、自分の解釈を自分なりにまとめてみました。
間違ってたら、ご指摘お願いします。
シリアライズ(シリアル化)
シリアライズとは、超簡単にいうと
複雑な物の単純化
です。
私が調べたサイトでは
複雑なデータ構造やプログラムの実行状態などをバイトや文字列に変換すること。
と説明がされていました。
シリアライズの例として、私はベットを想像しました。
ベットって大きいし重いので運びづらいですよね。
でも、ベットを分解して部品をまとめることで運びやすくなります。
また、部品さえ揃っていれば別の場所でも同じ状態を再現できますよね。
これがシリアライズです!!
ベット(複雑なデータ)って扱いづらい...
でもシリアライズすることで、扱いやすい形(部品)に変換されます。
そうすることで、別の場所(違う環境)でも同じ状態を再現できる!
そういうことだったのかシリアライズ
デシリアライズ(逆シリアル化)
デシリアライズは再構成です。
その名の通りシリアライズの逆ですね。
上の例を使うと、
まとめて送られてきた部品たちを組み立てて、ベットを再現するといった感じです。
片方を理解すると自然ともう片方も理解できるかもしれないですね。
そういうことだったのかデシリアライズ
まとめ
超簡単に、自分の解釈をまとめてみました。
そのため、間違っている部分もあるかもしれないので、「へー」といった感じで見てください。