Введение в технологию SilverLight
На конференции MIX 2010 была анонсирована версия Silverlight 5, релиз которой намечен на 2012 год. По описанию разработчиков, в этой версии будет реализован ряд нововведений как в возможности мультимедиа, так и в бизнес-функции. В частности ожидается:
- аппаратное декодирование H.264 устройствами с низким энергопотреблением для плавного воспроизведения HD видео с использованием GPU поддержки;
- аппаратное 3D ускорение с поддержкой vertex-шейдеров;
- улучшенное управление энергосбережением;
- поддержка пульта дистанционного управления;
- аппаратное ускорение работы в оконном режиме с Internet Explorer 9;
- поддержка 64-битных браузеров;
- полная поддержка Open Type и улучшение отображения текстов;
- быстрый запуск Silverlight приложений.
Плеер Silverlight поддерживает механизмы автообновления и конечный пользователь может быть уверен, что использует его последнюю версию. При необходимости, после выхода новой версии плеера, у пользователя появляется предупреждение об обновлении и выполняется загрузка и установка обновлений.
Существует несколько принципиально различных способов использования Silverlight приложений:
- Первый – "классический" способ, заключается в том, что приложение выполняется в браузере в окне плеера, которое при необходимости можно развернуть на весь экран. Все элементы управления выводятся в окне и весь процесс работы с приложением происходит в этом окне.
- Второй способ позволяет рассматривать Silverlight приложение как обычное приложение Windows. Для его выполнения браузер не требуется. И хотя выполнение происходит в особой песочнице, но уровень доступа к ресурсам (файлам, памяти компьютера) у такого приложения более широкий, чем у браузерного варианта. Имеется возможность использования локальных файлов, СОМ-библиотек и другого расширенного функционала.
- Приложения третьего типа основаны на внедрении элементов Silverlight в проекты ASP.Net или другие HTML приложения. С помощью Silverlight можно реализовывать сложные интерфейсы, но большая часть приложения сохраняет обычную веб-форму. Таким образом, внедряются видеофрагменты и анимационные элементы в интернет сайты.
С появлением Windows Phone 7 появилась возможность создавать приложения Silverlight для этой платформы, такие приложения и составляют четвертый тип.
Для создания любого из указанных типов приложений на компьютере разработчика в операционной системе Windows необходимо установить следующие инструменты:
- Microsoft Visual Studio 2010
- Microsoft Expressions Blend
- Silverlight Tools for Visual Studio 2010
- Silverlight Runtimes for Windows
Рассмотрим ключевые элементы насыщенных интернет приложений (RIA), которые необходимы для понимания лежащих в основе технологии Silverlight концепции. К ним можно отнести поддержку языка XAML, использование BCL,
Изначальное название Silverlight было WPF Everywhere (Windows Presentation Foundation (WPF) везде), что точно передает суть данной платформы, заключающуюся в поддержке упрощенной версии WPF на различных платформах. Как и в WPF в основе Silverlight лежит XAML (eXtensible Application Markup Language — расширяемый язык разметки приложений).
Появление данного языка описания интерфейсов направлено на решение одной из краеугольных проблем программирования – разделение программного кода приложения и его интерфейсного представления. В идеале это должно выражаться в том, что одно и то же приложение дизайнер и программист редактируют в собственных рабочих инструментах, не затрагивая работу друг друга. XAML решает данную задачу.
Дизайнер может создавать интерфейс страницы приложения с помощью Expression Blend, а затем разработчик, открыв проект в Visual Studio, связывает элементы с программным кодом. При необходимости эти итерации могут повторяться. В Visual Studio для реализации такого подхода используются частичные классы и код на фоне (code behind).
Таким образом, XAML позволяет отделить логику приложения от размещения и представления элементов управления. XAML основан на XML, и XAML файл представляет собой текстовое описание с синтаксисом XML. Элементы XAML описывают объекты, которые создаются во время исполнения. Элементы выстроены в определенную иерархию, а свойства элементов задаются через их атрибуты. Также через атрибуты и специальные элементы описываются события, как ответ на определенные действия пользователя или приложения.
Тема XAML достаточно сложная и многоаспектная и для квалифицированного разработчика Silverlight необходимо уметь работать с XAML. Подробную информацию можно получить в специальных справочниках и литературе [ 2 ] , [ 3 ] .
Кроме Expression Blend и Visual Studio 2010 можно для изучения XAML ознакомиться с приложением XAML Pad (http://msdn.microsoft.com/en-us/library/ms742398(v=VS.90) .aspx). Это приложение позволяет писать код на языке XAML и сразу видеть результат его преобразования и отображения ( рис. 1.2).