配列

 普段コレクションを配列で受け渡すのは単なる癖なのだが、LINQはIEnumerableをコレクションの基本にすえている。

 本当はIEnumerableを受け渡しても別にかまわないとは思うのだけど、Countがないのがちょっとあれだしタイピングの文字数的にも配列は圧倒的に優遇されている(IEnumerable=14文字、T[]=3文字)。なにより普通の型と同じように継承関係を扱える(object[]を引数に取る箇所には、string[]を入れられる。IEnumerableにIEnumerableは入れられない。

 勝手に中身を変えられるという致命的弱点は持つものの、配列の受け渡しはとても便利なのでいつも配列で済ませてきた。そうするとLINQとあわせるためにはLINQ処理後に毎回ToArrayしなくちゃいけなくなる。

 これが見た感じ無意味さが際立っていてソースが穢れている感すらある。だからといって配列をやめるのも難しい。配列が大好きなのだ。