Главная » C# » Списки, делегаты и лямбда-выражения в Visual C# (Sharp)

0

Одним из наиболее распространенных видов кода, который вам придется писать, будет код для управления множественными объектами. В предыдущих примерах управление множественными  объектами  осуществлялось  с  помощью  массивов. В главе 8 было рассмотрено, что, применяя индексатор и ключевое слово yiel d со связанным списком, можно обычный объект представить коллекцией. В  данной главе рассматриваются коллекции .NET, которые предоставляют легкий способ управления набором экземпляров объектов. Коллекцию можно рассматривать, как бесконечный ящик,  в  который  можно  класть  вещи,  проходиться  по  ним  в  цикле и извлекать их для пользования.

Сначала мы рассмотрим, как управлять коллекциями. После этого будет рассмоен пример кода, который подозревается в неправильной работе; этот код будет улучшен с помощью делегатов, потом с помощью анонимных методов и, наконец, с помощью лямбда-выражений.

Проект для примеров данной главы организован в виде простого консольного прожения. Так как мы будем разрабатывать не законченное приложение, а набор примеров, то создавать для них тесты или библиотеки мы не будем.

Управление коллекциями

В действительности коллекция — это объект, который указывает на множество других объектов. Сравните это с реляционной базой данных, где набор результатов может содержать одну запись, несколько записей или  ни одной записи. Для взаодействия с базой данный применяется язык SQL  (Structured  Query  Language, язык структурированных запросов), для которого  не  существует такого  понятия, как отдельная запись, и который рассматривает все как коллекцию. (В некоторых реализациях баз данных применяются расширенные версии языка SQL, позволяие обращение к отдельной записи, но за это обычно приходится платить понижием производительности.) Производительность коллекции в языке С# не страдает, чего нельзя сказать о простоте использования.

Для управления коллекциями в языке С# предоставляются специальные классы коллекций. Начиная в версии 2.0, в С# применяется другой подход к коллекциям,

который  решил  многие  проблемы,  существующие  в  более  ранних  версиях   С#. Здесь мы рассмотрим  управление  коллекциями до  и  после  версии  С#  2.0;  это доло  помочь  вам  в понимании  использования  коллекций.

Источник: Гросс  К. С# 2008:  Пер. с англ. — СПб.:  БХВ-Петербург, 2009. — 576 е.:  ил. — (Самоучитель)

По теме:

  • Комментарии