カスタムのメッセージ指向プロトコルを Scala で実装する必要があるとします。クライアント/サーバー コードも実装する必要があります。
プロトコル メッセージの「ケース クラス」を次のように定義します。
特性メッセージ case class Request1(...) extends Message case class Response1(...) extends Message ケースクラス Request2(...) extends Message case class Response2(...) extends Message ... // その他のリクエスト/レスポンス
ここで、入力/出力ストリームとの間でメッセージを読み書きし、メッセージを処理する関数が必要です。
def read(in: InputStream): メッセージ = {...} def write(msg: メッセージ、out: 出力ストリーム) {...} def handle(msg:Message): メッセージ = msg マッチ { case req: Request1 = ... // Request1 を処理する case resp: Response1 = ... // Response1 を処理します ... // 他のすべてのメッセージ タイプのケース }
うまくいくと思いますが、ソリューションを改善できるかどうか疑問に思います。どのように修正または改善しますか?