Поделиться через


Управление коллекциями и их создание

Обновлен: Ноябрь 2007

Наиболее распространенные коллекции предоставляются платформой .NET Framework. Любую из этих коллекций можно использовать или можно создать собственную на основе одной из них. Каждая коллекция предназначена для определенных целей. Элементы, входящие в каждый класс System.Collections, отражают назначение коллекции. Кроме того, универсальные коллекции в System.Collections.Generic упрощают создание строго типизированных коллекций.

При внедрении собственной коллекции, следует руководствоваться следующими принципами:

  • Начните с выбора правильного базового класса и интерфейсов. Советы по выбору типа коллекции см. в разделе Выбор класса коллекции.

  • Постарайтесь сделать свою коллекцию строго типизированной. Строго типизированные коллекции обеспечивают автоматическую проверку типа и не выполняют операции, приводящие к снижению производительности, такие как упаковка, распаковка и преобразования. Если используемый язык программирования поддерживает универсальные шаблоны, то используйте один из типов System.Collections.Generic. Если же язык не поддерживает универсальные шаблоны, то можно воспользоваться System.Collections.Specialized, содержащим примеры строго типизированных коллекций.

  • Постарайтесь обеспечить синхронизацию в выбранном классе. Дополнительные сведения см. в разделе Коллекции и синхронизация (потокобезопасность).

  • Постарайтесь обеспечить возможность сериализации для выбранного класса. Дополнительные сведения см. в разделе Концепции сериализации.

В этом подразделе

Ссылка

  • System.Collections
    Предоставляет справочную документацию по пространству имен System.Collections, содержащему интерфейсы и классы, определяющие различные коллекции объектов.

  • System.Collections.Specialized
    Предоставляет справочную документацию по пространству имен System.Collections.Specialized, которое содержит специализированные и строго типизированные коллекции.

  • System.Collections.Generic
    Предоставляет справочную документацию по пространству имен System.Collections.Generic, содержащему интерфейсы и классы, которые определяют универсальные коллекции.

Связанные подразделы

  • Коллекции и структуры данных
    Описывает различные типы коллекций, доступных в платформе .NET Framework, включая стеки, очереди, списки, массивы и структуры.

  • Serialization Concepts
    Поясняет два сценария, когда сериализация является полезной: при сохранении постоянных данных и передаче объектов между доменами приложений.