РЕЦЕНЗИИ
Сеппа Д. Microsoft ADO.NET. Пер. с англ. М.: Издательско-торговый дом “Русская Редакция”, 2003. - 640 с.: ил., компакт-диск.
Смена названий технологий Microsoft, где присутствуют два ключевых понятия: данные и объекты - DAO (Data Access Objects), RDO (Remoute Data Oblects), ADO (ActiveX Data Objects), ADO.NET, - напоминает какую-то игру слов. Некоторые разработчики видят за непрерывным изменением имен завуалированную попытку продажи старого товара в новой упаковке. В общем-то, конечно, не без этого, хотя в основе все же лежит реальное обновление технологий, связанное с растущими требованиями разработчиков приложений и их заказчиков.
Как известно, для взаимодействия приложений с базами данных наиболее эффективным способом является использование промежуточного слоя, который, предлагая разработчику широкий спектр функциональности, позволяет одновременно максимально абстрагироваться от конкретного типа источников информации. В середине 90-х годов Microsoft предложила для решения этой задачи два объектно-ориентированных интерфейса - DAO и RDO, основанных на использовании механизмов Microsoft Jet и ODBC и предназначенных соответственно для работы с локальными и удаленными базами данных. В 1998 г. в составе Visual Studio 6.0 была представлена новая технология ADO взамен DAO/RDO.
Выпуск ADO объяснялся тогда не только созданием единой технологии доступа к данным, но переходом от стандартов ODBC (взаимодействие с реляционными базами данных) к OLE DB (работа с самыми разнообразными источниками данных на базе COM-интерфейса). К тому же DAO и RDO были очень сильно привязаны к Visual Basic, а ADO выступала в качестве системы, независимой от языка программирования.
Последующее обновление ADO в 2000 г. (до повсеместного использования суффикса .NET она имела название ADO+) было вызвано необходимостью модернизации ядра с учетом более эффективной поддержки XML. А в начале 2002-го в составе .NET Framework появилась ADO.NET в ее современном виде - как иерархический набор объектов, построенный в соответствии с новой идеологией базовых библиотек классов и смены протоколов COM на .NET.
Книга Дэвида Сеппы является весьма полным руководством по применению библиотек ADO.NET, входящих в состав .NET Framework. Ее структура и стиль изложения позволяют последовательно изучить эту технологию с нуля или, если ее будет использовать опытный разработчик, найти ответы на интересующие конкретные вопросы. Хотелось бы отметить наличие специальных разделов “Вопросы, которые стоит задавать почаще” в конце каждой главы, где обсуждаются важные проблемы, которые порой недооценивают или не замечают разработчики.
Книга состоит из четырех частей и 14 глав. В первой части рассматриваются система объектов и возможности создания ADO.NET-приложения с помощью мастера DataFrom Wizard. В следующей - использование поставщиков данных (OLE DB Provider) и соответствующих объектов: Connection, Command, DataReader и DataAdapter. Почти половина книги (семь глав третьей части) отведена детальному изучению автономной работы с данными через “отсоединенные объекты” - DataSet, DataTable, DataColumn, DataRow, DataRelation и DataView. Здесь же обсуждаются сложные случаи обновления данных и применения XML-стандартов. Четвертая часть посвящена способам эффективной разработки Windows- и Web-приложений с использованием ADO.NET.
В приведенных в книге фрагментах кода в большинстве случаев используется поставщик OLE DB .NET Data Provider, как наиболее универсальный. Однако в приложении A дается подробное описание (с примерами кода) других полезных поставщиков данных - SQL Client, ODBC, Oracle. Тут также рассматриваются некоторые проблемы адаптации программы к различным поставщикам данных. В другом приложении рассказывается о трех полезных утилитах, разработанных автором для расширений стандартной функциональности ADO.NET. Прилагаемый компакт-диск содержит все примеры программ книги с исходными текстами и электронную версию книги с интегрированной системой поиска.
В заключение нужно отметить, что ADO.NET - это не только самая мощная технология доступа к данным, предлагаемая сегодня Microsoft программистам, но и весьма сложная система. Однако те, кто смог преодолеть трудности ее изучения, в один голос говорят о значительном повышении производительности разработки.