私は最近、IList上で強く型付けされた配列を返すことを好んだ理由を誰かに尋ねていました。私はいつも、インターフェイスに対するプログラミングは、長い寿命を持つプロジェクトに直面したとき、最も柔軟で最良の方法であると考えていました。だから、私が奇妙に思ったのは、彼が答えたときでした。IListを返す<T> vs Array in C#?
通常、変更可能なタイプよりも不変のタイプ が優先されます。配列は 不変です。 IListはそうではありません。
私はこの声明をよく理解していません。誰でもこれを明確にするのに役立つことができますか
ご協力いただきありがとうございます。
これは、私が探していた「ああは」の瞬間を私に与えました!リポジトリからT []を返すことは、「リーキーアブストラクションの法則」のように、「漏れ」ではありません。私がリポジトリに何かを追加したいのであれば、それはAdd/Insertメソッドなのでしょうか?返されたリストに何かを追加すると、作業ユニットに参加したり、予想どおりに働くことができると仮定することは、逆効果的/直感的ではありません。 IRepositoryを使用する場合、彼は100%正しいです!彼が私に与えた説明は、あなたが言ったことの線に沿っていましたが、配列はIListよりも不変です。どうもありがとうございます! – mkelley33
+1ジュニアを見るリスト .Addは良いアイデアだと思うかもしれません。 –