データの潜在的に無限の「ストリーム」、つまりバイト、文字などを操作する関数を作成する場合、入力/出力に文字列/配列とストリームを使用することを決定する際の設計上の考慮事項は何ですか?
常にストリームを使用する関数を作成し、ストリーム ラッパー (つまり、StringReader/Writer) を使用して、破棄やその他の考慮事項を必要としない配列や文字列などの「単純なデータ」を返すオーバーロード メソッドを作成すると、パフォーマンスに大きな影響がありますか?
結果の配列を「返す」ことができ、通常は破棄について心配する必要がないため、配列を操作する関数ははるかに便利だと思います。ストリーム オペレーターは、無限のデータ ソースを操作でき、おそらくメモリ効率も高いため、優れていると思います。