言い方が正しかったかどうかはわかりませんが、簡単な例として、Point3 値 (1M など) のコレクションがあるとします。
これらの値に別の Point3 値を追加し、新しい Point3 値を返す Offset というメソッドがあります。メソッドが静的であるとしましょう。
Point3 型は不変です。
問題は、次のような方法が必要かどうかです。
public static Point3 Offset ( Point3 a, Point3 b )
また
public static IEnumerable<Point3> Offset ( IEnumerable<Point3> a, IEnumerable<Point3> b )
私には、タスクを異なるスレッドの別々のタスクに分割するためのより良い選択のように思えます。
どう思いますか?そして、#1または#2の利点は?