TCP ソケットから受信したメッセージを取得し、それらをエンコード/デコードし、暗号化/復号化する一連のメソッドをサーバー アプリケーションに記述しようとしています。
メッセージは、それぞれ独自のプロパティ セットと合計長を持つ特別な型として定義されていることを考慮すると、次の解決策のいずれかを選択する必要がありますEncode<T>(...) where T : IMessage
。などの をResolveEncoder<T>
実装している限り、任意のタイプのメッセージを使用するメソッドを作成し、System.Reflectionを使用して、それについて知る必要があるすべてを決定します。IMessage
Encode(IMessage message)
コードが 30 分の 1 になるので、解決策 2 に興味があります。ただ、プロパティの常時反映が性能に影響しないか心配です。プロジェクトを完了するための時間が限られているため、実際に「実験」することはできません。
いずれかのソリューションでパフォーマンスがどのように低下するかについての個人的な経験やベンチマークとのリンクに感謝します.