РЕЦЕНЗИИ

Джонсон Б., Скибо К., Янг М. Основы Microsoft Studio .NET 2003. Пер. с англ. М.: издательско-торговый дом "Русская Редакция", 2003. - 464 с.

Российские читатели вроде бы не могут пожаловаться на отсутствие литературы по технологиям Microsoft .NET и соответствующим средствам разработки*. Однако при взгляде на ассортимент книг, посвященных созданию приложений, легко заметить, что в абсолютном большинстве из них рассматриваются в основном возможности среды .NET Framework и соответствующих языков программирования (в первую очередь Visual Basic .NET и C#). При этом от внимания авторов и читателей ускользает второй ключевой компонент - сам инструмент Visual Studio .NET, его интегрированная среда разработки (IDE).

В то же время, начав использование VS.NET, многие быстро осознают, что производительность их труда сильно зависит от умения эффективно применять это средство. Проблема тут заключается в том, что VB.NET является очень мощным, многофункциональным, а значит, и довольно сложным инструментом. Далеко не все его возможности лежат "на поверхности", до многих из них трудно добраться методом "тыка". Из собственного опыта могу сказать, что знание предыдущих версий Visual Studio порой не столько помогает, сколько мешает осваивать новую среду - привычные вещи реализованы в ней совсем иначе.

Именно поэтому эффективное применение VS.NET требует от разработчика систематического изучения возможностей этого продукта. Так что книга, полностью посвященная среде разработки VS.NET, представляется очень актуальной. Хотя в названии говорится о версии 2003, ее содержание на 99% актуально и для варианта 2002 г.

Собственно среде VS.NET посвящены только первые три из пятнадцати глав книги. В них рассказывается об общих принципах построения инструмента, методах управления проектами и работе с редактором исходных текстов (но и здесь новое для себя смогут найти даже опытные программисты).

Основное же внимание авторов сосредоточено на вопросах настройки среды и автоматизации процесса разработки. Актуальность этой темы определяется тем, что из-за возросшей сложности VS.NET и его универсальности значительно увеличилось количество проблем с его адаптацией к специфике создания определенных категорий приложений и работе конкретного программиста. Средства решения этих задач были и в более ранних версиях инструментария Microsoft, однако пакет VS.NET предоставляет гораздо более широкий выбор. Свидетельством востребованности этого функционала служит хотя бы то, что с появлением VS.NET резко возросло количество коммерческих продуктов - дополнительных средств, предназначенных именно для повышения производительности труда его пользователей.

В этой связи следует отметить, что возможности расширения VS.NET представлены на двух уровнях. Первый, реализованный в виде объектной модели Development Tools Extensibility (DTE), является открытым и доступным всем пользователям продукта. Модель включает около 200 объектов, с помощью которых можно получить доступ практически ко всем компонентам и функциям VS.NET IDE. Сами расширения реализуются в виде макросов, надстроек (Add-ins) и мастеров (Wizards).

Второй является закрытым для всеобщего применения. Доступ к нему получают только участники программы Visual Studio Industry Partner уровня Premier для более тонкой интеграции своих продуктов, в частности компиляторов, с VS.NET (см. "Обновленная партнерская программа Microsoft для разработчиков", www.pcweek.ru/?ID=306042).

В книге рассматриваются функции настройки и автоматизации средствами первого уровня. В этой связи нужно подчеркнуть, что почти двухлетний опыт присутствия VS.NET на рынке показывает, что даже возможности первого уровня позволяют не только повысить эффективность работы программиста с помощью средств, создаваемых "для себя", но производить специализированный инструментарий для коммерческого распространения.

Механизм макросов появился в среде разработки Microsoft впервые. Он является наиболее простым, но при этом весьма эффективным средством автоматизации программирования в среде VS.NET (см. PC Week/RE, N 42/2002, с. 29). В целом он похож на то, что известно многим пользователям Office/VBA, хотя есть и некоторые различия. В книге макросам отведена только одна глава, но на самом деле многие вопросы, относящиеся к их применению (например, обращение к конкретным объектам иерархии DTE), рассматриваются в последующих разделах.

Технологии создания надстроек и мастеров подробно изучаются в восьми главах основного раздела книги "Расширение VS.NET". Комментировать их содержание вряд ли имеет смысл, можно только отметить, что в них есть вся необходимая информация для изучения принципов организации этих расширений и получения практических навыков.

Стоит сказать, что надстройки в принципе реализуют ту же функциональность, что и макросы. Но, реализованные в виде двоичных DLL с использованием интерфейса IDTExtensibility2, они обладают более высоким быстродействием и могут создаваться как на VB.NET, так и на любых языках, поддерживающих создание COM-объектов, в том числе и на .NET-языках.

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

В трех главах заключительного раздела книги рассматриваются вопросы установки созданных .NET-приложений, эффективного использования справочной системы VS.NET, а также управления исходным кодом с помощью Visual SourceSafe и сложными программными проектами с использованием командной строки. В приложении приводится также справочник по модели кода. Дополнительные материалы к книге, в том числе исходные коды примеров, можно найти на Web-узле Microsoft Press.

Версия для печати