oldi

Microsoft Visual Studio .NET

Обзор основных новинок в версии Beta 2

Алексей Федоров

Облегчение создания XML Web-сервисов и Web-приложений

   Создание Web-сервисов

   Использование Web-форм

   Приложения для мобильных устройств

Максимальное увеличение производительности разработчиков

   Использование Windows-форм

   Серверная разработка

 

В середине лета этого года фирма Microsoft выпустила вторую бета-версию средства разработки для платформы .NET — Microsoft Visual Studio .NET. В данном обзоре мы ознакомим вас с основными новиками, появившимися в данной версии.

По определению фирмы Microsoft, Microsoft Visual Studio .NET — это продукт, «предназначенный для разработки основанных на языке XML распределенных Web-сервисов и приложений, которые обеспечат доступ к информации в любом месте, в любое время и через любое устройство». Прежде чем обратиться к рассмотрению новинок, кратко перечислим цели, которые преследовала команда разработчиков, начиная работу над новой версией средства разработки:

  • облегчить создание XML Web-сервисов и Web-приложений;
  • максимально увеличить производительность разработчиков;
  • расширить функциональность языков программирования;
  • обеспечить поддержку всего цикла создания корпоративных приложений.

Ниже мы более подробно рассмотрим функциональные новинки в каждой категории. В целом версия Beta 2 отличается от предыдущей следующими ключевыми функциями.

  1. Поддержка Web-хостинга. С появлением версии Beta 2 ряд компаний начали обеспечивать хостинг .NET-приложений и Web-сервисов, что позволяет разработчикам внедрять приложения и делать их доступными для миллионов пользователей во всем мире. Более того, Microsoft предоставляет бесплатную лицензию на внедрение решений, созданных с помощью данной версии Visual Studio .NET.
  2. Возможность загрузки компонентов сторонних фирм. Поиск компонентов сторонних фирм в версии Beta 2 облегчен. Ресурсы для разработчиков перечислены на вкладке What’s New стартовой страницы Microsoft Visual Studio .NET. Для доступа к группам новостей существует вкладка Online Community, а вкладка Downloads обеспечивает доступ к дополнительным компонентам и примерам, доступным для загрузки.
  3. Наличие средств для разработки корпоративных приложений. В состав Microsoft Visual Studio .NET Enterprise Architect входят средства для планирования, анализа, дизайна, компоновки и отладки корпоративных приложений. В новой версии продукта имеются средства моделирования приложений на языке UML 1.2, а также для моделирования баз данных.

Теперь обратимся к функциональным новинкам Microsoft Visual Studio .NET.

Облегчение создания XML Web-сервисов и Web-приложений

В июньском номере нашего журнала мы рассмотрели концепцию Web-сервисов и кратко ознакомились с возможностями, предоставляемыми Microsoft Visual Studio .NET ( «Web нового поколения — Web-сервисы», КомпьютерПресс № 6, 2001). Напомним, что Web-сервисы используются для интеграции Web-приложений. Эти сервисы базируются на протоколе HTTP и могут вызывать удаленные методы других сервисов, расположенных за firewall. Web-сервисы поддерживают протокол Secure Socket Layer (SSL), а также стандартные методы Web-аутентификации. Web-сервисы достаточно гибко взаимодействуют с компонентными технологиями и различными способами вызова объектов, в результате чего программы, написанные на любом языке, использующие любую компонентную модель и выполняющиеся под управлением любой операционной системы, могут использовать Web-сервисы.

Помимо поддержки создания Web-сервисов, Microsoft Visual Studio .NET. обеспечивает широкий набор функций для реализации Web-приложений, основанный на концепции Web-форм — ключевого компонента архитектуры .NET. Используя Web-формы, разработчики могут создавать интерфейсы Web-приложений точно так же, как интерфейсы Windows-приложений. С помощью Microsoft Visual Studio .NET и Web-форм разработчики могут быстро реализовывать многоплатформенные программируемые Web-приложения, «прозрачные» для всех версий браузеров, используя те же средства, что и для создания настольных приложений.

В начало В начало

Создание Web-сервисов

Web-сервисы, основанные на языке XML, являются ключевой технологией платформы .NET. Поэтому разработка Web-сервисов с помощью Microsoft Visual Studio .NET предельно упрощена — создание, тестирование и внедрение Web-сервисов не сложнее, чем написание обычных Web-приложений, использующих технологию ASP.NET.

Создание Web-сервиса сводится к выполнению следующих шагов:

  • выбор нового типа проекта — ASP.NET Web Service;
  • написание кода функции;
  • добавление атрибута <Webmethod()> в части определения функции;
  • выбор команды Project | Build — Visual Studio .NET компилирует код и внедряет его на Web-сервер.

Атрибут <Webmethod()> указывает компилятору на необходимость сделать этот метод доступным для Web-клиентов. Помимо этого автоматически создается страница с описанием Web-сервиса, где находятся информация о доступных методах, а также тестовая форма для вызова Web-сервиса.

Если же вызвать Web-сервис с параметром ?WSDL, мы получим XML-документ, содержащий подробное описание данного сервиса. Этот документ, содержащий все открытые функции сервиса, входные параметры и их типы данных, а также возвращаемые функциями типы данных, создается Visual Studio .NET автоматически.

После создания Web-сервиса можно использовать протокол HTTP для передачи ему входных параметров и получения результатов. Простейшее тестирование Web-сервиса сводится к указанию в браузере адреса сервиса и необходимых данных.

С помощью Visual Studio .NET очень просто создать клиентское приложение, потребляющее функции Web-сервиса. Все, что необходимо для этого сделать, — это добавить ссылку на соответствующий сервис в проекте клиентского приложения. Команда Add Web Reference запускает диалоговую панель, с помощью которой можно искать существующие Web-сервисы на локальном компьютере, в Internet или в универсальном UDDI-реестре.

Поскольку WSDL-документ содержит всю необходимую информацию о Web-сервисе, Visual Studio .NET может автоматически сгенерировать необходимый для использования этого сервиса код. После того как ссылка на сервис добавлена к проекту, мы можем использовать сервис как обычный объект. Приведенный ниже фрагмент кода показывает это:

Dim ws As New CitySearch.SwissSearch()
Dim CityName As String
CityName = TextBox1.Text
‘
‘ Вызов метода Web-сервиса
‘
DS = ws.FindCity(CityName)

Кроме того, вся функциональность среды разработчика — подсказки о параметрах, завершение кода и т.п. — распространяется и на Web-сервисы:

Вследствие того что Web-сервисы доступны через протокол HTTP, программы, выполняющиеся на любой платформе и написанные на любом языке программирования, могут потреблять эти сервисы. Более того, для создания Web-сервисов не обязательно использовать Visual Studio .NET или работать под управлением Windows. Например, любители программирования на Delphi могут воспользоваться новыми возможностями Delphi 6, программисты на языке Java — средствами, предоставляемыми фирмой IBM, и т.п. Отметим, однако, что Visual Studio .NET на сегодняшний день — самое простое средство создания Web-сервисов.

Итак, процесс создания Web-сервисов сводится к следующим этапам:

  • определение функциональности сервиса и набора предоставляемых методов;
  • написание ASP.NET-кода или адаптация существующего кода;
  • тестирование кода на соответствие ожидаемой функциональности;
  • превращение кода в методы Web-сервиса;
  • написание потребителя созданного ранее сервиса.

И последнее замечание по поводу Web-сервисов. Несмотря на то что Microsoft активно участвует в разработке стандартов, лежащих в основе функционирования Web-сервисов, данная технология не является технологией только одной фирмы.

В начало В начало

Использование Web-форм

Как мы отмечали выше, Web-формы привносят знакомую пользователям концепцию форм в мир Web-приложений. Таким образом, используя Visual Studio .NET, разработчики работают практически с одним набором инструментов и для создания настольных приложений, и для реализации Web-приложений.

Хотя поддержка Web-форм обеспечивается ядром .NET, Visual Studio .NET упрощает использование этой технологии. Стандартная страница с Web-формами состоит из файла, содержащего XML-описание визуального представления формы (HTML, WML, XML и т.п.), и файла, в котором располагается код обработчиков событий. Оба файла находятся на сервере и генерируют Web-страницу, возвращаемую Web-клиенту. Страница может быть сгенерирована в стандарте HTML 3.2 с учетом специфических особенностей того или иного браузера либо для мобильного устройства. В последнем случае используется Mobile Internet Toolkit, интегрированный в состав Visual Studio .NET.

Как известно, в Visual Studio .NET всем языкам программирования доступны одни и те же Web-технологии. Независимо от того, пишете вы код на Visual Basic .NET или на Visual C# .NET, средства разработки и программная модель остаются теми же. Таким образом, для создания Web-форм пользователи могут выбирать наиболее подходящий им язык программирования.

Основные преимущества использования Web-форм таковы:

  • для создания Web-форм используется знакомая большинству разработчиков программная модель, позволяющая легко мигрировать от Windows-приложений к Web-приложениям практически без дополнительного обучения;
  • Web-формы обеспечивают полное разделение визуального представления и кода формы. Такой подход облегчает обновление отдельных частей независимо друг от друга, упрощает навигацию по коду и обеспечивает более простую поддержку версий;
  • код обработчиков событий компилируется при первом обращении к Web-странице, что значительно повышает производительность приложений по сравнению с использованием интерпретируемого кода.
В начало В начало

Приложения для мобильных устройств

За счет использования Mobile Internet Toolkit в Web-формах поддерживается генерация кода для мобильных устройств.

Данный набор компонентов поддерживает генерацию кода для различных мобильных устройств — WAP-телефонов, cHTML-телефонов, PocketPC, Palm и пейджеров RIM Blackberry.

В рамках одного проекта можно использовать и Web-формы для обычных браузеров, и формы для мобильных устройств, объединяя бизнес-логику и доступ к данным для двух платформ. Для написания кода для мобильного устройства вы выбираете новый тип проекта — Mobile Web Application. Как показано ниже, в этом случае среда разработчика не отличается от режима создания обычных Web-приложений.

На приведенном выше рисунке показана интеграция Mobile Internet Designer в среду Visual Studio .NET. Для тестирования приложений для мобильных устройств можно использовать как эмулятор, входящий в состав Mobile Internet Toolkit, так и эмуляторы других фирм.

Mobile Internet Toolkit позволяет разработчикам создавать новые интерфейсные элементы на основе уже существующих. Кроме того, можно расширять функциональность Mobile Internet Toolkit, добавляя описания новых типов устройств в файл machine.config.

В начало В начало

Максимальное увеличение производительности разработчиков

Новая среда разработчика, реализованная в Visual Studio .NET, существенно увеличивает производительность труда разработчиков, предоставляя им широкий набор средств для автоматизации рутинных операций и минимизации написания кода.

Visual Studio .NET предоставляет единую среду для всех языков программирования. Эта среда соединила в себе лучшие элементы индивидуальных средств — Visual Basic, Visual C++, входивших в состав Visual Studio 6.

При каждом запуске Visual Studio .NET разработчик попадает на стартовую страницу, где можно установить необходимые опции, прочитать новости, получить доступ к дополнительной информации о Visual Studio .NET и о платформе .NET.

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

В Visual Studio .NET концепция Project Explorer была расширена, так что теперь разработчикам доступно средство Solution Explorer, которое является нейтральным по отношению к языкам программирования и типам создаваемых проектов.

В новой версии Toolbox помимо большого числа компонентов, доступных для различных типов проектов, можно хранить фрагменты кода, перетаскивая их из редактора кода. Состав Toolbox меняется в зависимости от выбора того или иного дизайнера или редактора.

Еще одним новшеством в Visual Studio .NET является средство под названием Server Explorer, с помощью которого разработчикам становятся доступны ресурсы на любом компьютере в сети. С помощью этого средства можно соединяться с серверами, просматривать ресурсы, включая очереди сообщений, счетчики производительности, сервисы, процессы, протоколы событий и объекты баз данных.

Кроме того, Server Explorer позволяет разработчикам программно обращаться к этим серверным компонентам и ресурсам из приложений, создаваемых с помощью Visual Studio .NET, либо непосредственно добавляя эти компоненты к проекту, либо создавая компоненты, которые производят мониторинг выбранных ресурсов. Сюда относятся соединения с SQL Server и с другими базами данных, конфигурация и интеграция серверов Exchange 2000 в приложения, мониторинг процессов, сервисов и загруженных на сервере DLL, а также отладка серверных событий.

Среди других новинок в среде разработчика Visual Studio .NET следует отметить:

  • динамическую справочную систему, доступную в любой момент работы. Предоставляемая справочная информация состоит из разделов Help, Actions, Miscellaneous и Samples. Возможен просмотр информации в окне среды разработчика и в отдельном окне;
  • расширенный интегрированный отладчик, унифицированный для всех поддерживаемых языков программирования;
  • новый дизайнер Web-форм, позволяющий визуально создавать интерфейсы ASP.NET-приложений без написания HTML- и скриптового кода;
  • новый дизайнер компонентов, позволяющий наглядным образом создавать серверные компоненты;
  • новый дизайнер XML-документов и схем (XSD-файлы);
  • новую объектную модель среды разработчика и обширный набор макросов — Visual Studio Macros;
  • возможность включать Visual Studio for Applications (VSA) в состав приложений для обеспечения их настройки.
В начало В начало

Использование Windows-форм

Для создания клиентских приложений в Visual Studio .NET используются Windows-формы. Как и в случае с Web-формами, поддержку Windows-форм обеспечивает ядро .NET, а Visual Studio .NET лишь предоставляет средства, облегчающие разработку приложений этого класса на всех поддерживаемых языках программирования. Следует отметить простоту интеграции Windows-приложений с Web-сервисами и возможность создания приложений, работающих с базами данных и использующих ADO.NET.

Одним из ключевых нововведений в Windows-формах является поддержка визуального наследования, значительно облегчающая повторное использование кода. Появился большой набор новых компонентов, доступных разработчикам: Link Label, Tray Icon, Print Preview и т.д. Для создания приложений, использующих графику, разработчики могут обращаться к множеству функций, реализованных в GDI+ (ряд функций GDI+ также доступны и для Web-приложений).

В начало В начало

Серверная разработка

Для доступа к серверным компонентам в Visual Studio .NET используется новое средство — Server Explorer, которое существенно расширяет функциональность окна Data View, знакомого пользователям Visual Studio 6. Помимо работы с базами данных поддерживаются очереди сообщений, а также другие серверные элементы. Разработчики могут добавлять определенные типы ресурсов из Server Explorer в дизайнеры Visual Studio .NET. После этого среда автоматически создает компонент, который ссылается на указанный ресурс. Например, разработчик может выбрать очередь сообщений и добавить этот ресурс в Component Designer, а Visual Studio .NET автоматически создаст компонент очереди сообщений для данной очереди. Разработчики также могут применять Server Explorer для администрирования Windows-сервисов — запускать, останавливать или приостанавливать их. По умолчанию Server Explorer сохраняет последнюю конфигурацию, использовавшуюся в данной сессии, и повторно открывает ее при следующем обращении к окну Server Explorer. Возможны сохранение нескольких конфигураций с задаваемыми разработчиками именами и переключение между ними. В частности, можно сохранять специфичные серверные конфигурации для каждого этапа разработки проекта.

Component Designer позволяет визуально создавать серверные компоненты. Процесс создания таких компонентов сводится к перетаскиванию ресурса в дизайнер, установке необходимых свойств и написанию кода.

Этот подход существенно облегчает инициализацию и использование серверных ресурсов: вместо сотен строк кода разработчики используют ресурсы как обычные объекты — через свойства и методы.

В завершение нашего краткого обзора серверной разработки подведем некоторые итоги:

  • Visual Studio .NET значительно облегчает использование Microsoft Message Queue (MSMQ), гарантируя доставку сообщений и работу с отсоединенными пользователями, автоматически протоколируя активность и обеспечивая связь с IBM MQSeries;
  • с помощью Visual Studio .NET очень просто управлять протоколами событий — читать и записывать информацию. Протоколы событий поддерживаются на платформах Microsoft Windows NT, Windows 2000 и Windows XP;
  • Visual Studio .NET поддерживает выполнение компонентов по заранее заданному расписанию — нужно только добавить к уже существующему компоненту компонент Scheduled Event;
  • для разработчиков становятся доступными счетчики производительности, так как Visual Studio .NET позволяет создавать коды для чтения существующих счетчиков, для изменения их значений, а также для реализации новых счетчиков;
  • чтобы следить за изменениями в файловой системе, можно использовать новый серверный компонент — Directory Watcher;
  • новые средства трассировки приложений позволяют контролировать работу решений, созданных средствами Visual Studio .NET;
  • поддержка концепции динамических свойств позволяет разработчикам изменять характеристики приложений без модификации исходного кода.

На этом мы завершим первую часть нашего знакомства с Visual Studio .NET — средой разработки для платформы .NET, которая облегчает создание Web-сервисов, Web-приложений, Windows-приложений и серверных компонентов. В следующем номере мы рассмотрим расширенную функциональность языков программирования — Visual Basic .NET, Visual C#.NET и Visual C++ .NET, а также новые средства для поддержки всего цикла создания корпоративных приложений.

КомпьютерПресс 9'2001