Benutzerdefinierte Sammlung mit IEnumerable vs ICollection vs IList

Muss ich das design für meine eigenen GenericCollection Klasse. Jetzt habe ich viele Möglichkeiten abzuleiten, es mit IEnumerableICollectionund IListwo später bietet einige neue Funktionen.

Ich bin etwas verwirrt, wenn ich mit IEnumerable<T> könnte ich verlangen, das Objekt deklarieren, um tatsächlich halten Sie die Kollektion wie in diesem Fall _list.

public class GenericCollection<T> : IEnumerable<T>
{
    private List<T> _list;
    //...
}

Aber wenn ich mit ICollection<T> oder IList<T>ich fordere nicht zu erklären, dass die List Objekt, wie es ist implizit verfügbar.

public class GenericCollection<T> : IList<T>
{
    //no need for List object
    //private List<T> _list; 
    //...
}

Was ist der Unterschied zwischen diesen beiden Ansätzen mit Bezug auf Leistung?

In dem Szenario jeweils bevorzugt, besonders, wenn es um die Gestaltung Ihrer eigenen Kollektion. Ich interessiere mich für das geringe Gewicht Sammlung mit guter Leistung. Ich denke, dies kann erreicht werden durch IEnumerable<T> aber wie das genau zusammen mit einigen starke Gründe, mit ihm zu gehen?

Ich überprüft haben einige bereits bestehende posten, aber keiner gibt erforderlichen Informationen.

Rückkehr 'IList' vs 'ICollection' vs 'Sammlung'

InformationsquelleAutor der Frage Furqan Safdar | 2012-10-31

Schreibe einen Kommentar