Инструменты разработки приложений Silverlight

107

Создавать файлы, необходимые для приложения Silverlight, можно вручную, однако профессиональные разработчики всегда используют для их создания специальные инструменты. Графические дизайнеры обычно применяют для этого программу Microsoft Expression Blend, которая предоставляет богатый набор средств разработки мощных пользовательских интерфейсов. В противоположность этому программисты обычно используют программу Visual Studio, которая предоставляет ряд специализированных инструментов кодирования, отладки и тестирования.

Обе программы (Visual Studio и Expression Blend) хорошо приспособлены для создания приложений Silverlight, поэтому можете работать с любой из них или обеими одновременно. Например, программист может создать с помощью Visual Studio базовый пользовательский интерфейс, а затем передать его команде дизайнеров, которая "отшлифует" его внешний вид с помощью Expression Blend. Когда дизайнерская работа будет закончена, проект можно передать обратно программисту для заполнения данными, отладки, тестирования и развертывания.

Многие разработчики устанавливают на компьютер обе программы, активизируют их одновременно и в процессе работы переключаются между ними. Visual Studio они используют для решения программных задач, таких как написание и отладка кода, a Expression Blend — для работы с пользовательским интерфейсом, например для редактирования шаблонов элементов управления, выбора цветов, настройки анимации, создания простой векторной графики.

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

Кроме того, Microsoft в настоящее время создает еще один инструмент разработки приложений Silverlight, рабочее название которого Visual Studio LightSwitch. В нем акцент делается на использовании шаблонов и средств генерации кода для быстрого создания сложных приложений. Предполагается, что пользователем LightSwitch будет разработчик корпоративных приложений, которому нужно быстро создавать системы обработки больших объемов данных, используя приложения Silverlight в качестве клиентской части. Предполагается также, что LightSwitch будет служить стартовой точкой при работе над сложными корпоративными проектами, доработка которых будет выполняться в Visual Studio.

Сравнение Visual Studio с Expression Blend

Ниже приведен краткий обзор программ Visual Studio и Expression Blend:

Visual Studio

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

Expression Blend

Предоставляет мощные средства создания пользовательского интерфейса Silverlight, намного более мощные, чем Visual Studio. Для многих типов сложных пользовательских интерфейсов (например, при создании градиентной заливки) программа Expression Blend очень удобна. Кроме того, программа поддерживает инструмент обработки прототипов приложений SketchFlow, который содержит хороший редактор кода, похожий на редактор Visual Studio. Однако в Expression Blend нет многих важных инструментов разработки, включая средства отладки и рефакторинга кода.

Веб-сайты Silverlight

В рабочей среде Visual Studio или Expression Blend можно создавать сайты Silverlight двух типов:

Статический сайт.

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

Сайт ASP.NET.

Программа Visual Studio создает два проекта: содержащий файлы приложения Silverlight и содержащий веб-сайт ASP.NET на стороне сервера. Созданный веб-сайт будет развернут вместе с файлами Silverlight. Точкой входа в приложение Silverlight может быть либо обычный файл HTML, либо форма ASP.NET, в которую включается содержимое, сгенерированное на сервере.

Какой способ лучше? В обоих случаях приложение Silverlight выполняется одинаково. При первом способе клиентский браузер получает документ HTML с областью содержимого Silverlight, причем код Silverlight выполняется не на веб-сервере, а на локальном компьютере. Второй способ (сайт ASP.NET) облегчает взаимодействие содержимого Silverlight с приложением ASP.NET. Второй способ лучше в следующих случаях:

Если же серверный код не используется, то создавать полнофункциональный сайт ASP.NET нет смысла.

Создание автономного проекта Silverlight

Начать изучение Silverlight проще всего, создав статический сайт со страницами HTML без серверного кода. Для этого выполните в рабочей среде Visual Studio следующие действия:

  1. Выберите команду Flle --> New Project. В качестве типа проекта выделите узел Visual C# и выберите шаблон Silverlight Application. Как обычно, задайте имя проекта и его расположение на жестком диске. Щелкните на кнопке ОК. Будет создан изолированный проект Silverlight.

  2. Программа Visual Studio предложит указать, нужно ли кроме проекта Silverlight создать полнофункциональный веб-сайт ASP.NET, способный выполнять серверный код. Снимите флажок Host the Silverlight application in a new Web site (Хостировать приложение Silverlight на новом веб-сайте):

    Отмена включения в проект веб-сайта ASP.NET
  3. Выберите целевую версию приложения Silverlight. Если в приложении не используются новейшие средства Silverlight 5, лучше выбрать Silverlight 4 потому что эта версия установлена на большем количестве компьютеров. Если в Visual Studio не установлен пакет Silverlight 5 Tools, варианта Silverlight 5 в раскрывающемся списке не будет.

    Целевую версию Silverlight можно будет изменить в любой момент после создания проекта. Для этого дважды щелкните в обозревателе решений в узле Properties (Свойства) и выберите нужную версию в раскрывающемся списке Target Silverlight Version (Целевая версия Silverlight).

  4. Щелкните на кнопке ОК, чтобы продолжить создание проекта.

Каждый проект Silverlight начинается с автоматического создания набора необходимых файлов, показанных на рисунке ниже. Файлы с расширением .xaml содержат разметку XAML. Все файлы с расширением .cs содержат исходный код C#. определяющий функциональность приложения:

Проект Silverlight в обозревателе решений

Ниже приведено описание перечисленных на рисунке файлов, составляющих базовый проект Silverlight:

App.xaml и App.xaml.cs

Конфигурационные файлы приложения Silverlight. Определяют ресурсы, доступные для всех страниц приложения и позволяют приложению реагировать на такие события, как запуск, завершение, ошибка и т.п. Непосредственно после генерации проекта код файла App.xaml.cs задает вывод страницы MainPage.xaml.

MainPage.xaml

В этом файле определен пользовательский интерфейс (коллекция элементов управления, изображений и текстовых объектов), выводимый на первой странице. Технически страница Silverlight является пользовательским элементом управления, т.е. пользовательским классом, производным от класса UserControl. Приложение Silverlight может содержать произвольное количество страниц. Для добавления страницы выберите команду Project --> Add New Item и шаблон Silverlight User Control (Пользовательский элемент Silverlight), задайте имя файла и щелкните на кнопке Add (Добавить).

MainPage.xaml.cs

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

Вместе с этими четырьмя важными файлами автоматически создается еще несколько компонентов, которые можно найти в других окнах рабочей среды. Например, в узле Properties (Свойства) окна Solution Explorer (Обозреватель решения) отображен файл AppManifest.xml, в котором перечислены сборки приложения. Файл AssemblyInfo.cs содержит информацию о проекте (имя, версия, издатель и т.п.), внедряемую в сборку Silverlight во время компиляции. Редактировать эти файлы вручную нельзя. Они автоматически изменяются рабочей средой Visual Studio при добавлении ссылок и установке свойств проекта.

Точкой входа в приложение Silverlight служит автоматически генерируемый скрытый файл SilverlightApplicationlTestPage.html. Этот файл разметки содержит элемент <object>, который создает область содержимого Silverlight.

Пройди тесты
Лучший чат для C# программистов