クライアント/サーバー アプリは、を使用しNetDataContractSerializer
て任意Serializable
のオブジェクトをシリアル化します。
の出力はBinaryFormatter
多少小さくなりますが、パフォーマンスはそれほど良くありません。
より小さな表現が可能になり (例えばXmlSerializer
and DataContractSerializer
、Json、Protocol Buffers、Thrift などの出力)、シリアライズとデシリアライズがはるかに高速になります。
ただし、それらを使用するには、すべてのSerializable
クラスに移動して属性を追加し、場合によってはフィールドのアクセス レベルを変更する必要があります。これらのクラスは多くの異なる内部プロジェクトに分散しているだけでなく、クライアントには独自のプロジェクトがあります。Serializable
変更が必要なクラスを含むdll 。いわば一大事業。
オブジェクトで可能な他のパフォーマンスの向上と潜在的なサイズ削減 (gzip など以外) はありSerializable
ますか?