Серебряный свет Веба
материал посвящен обзору Microsoft Silverlight, его предназначению и возможностям
Microsoft Silverlight — это технология, основанная на XML и .NET, изначально призванная заменить Adobe Flash. Другая, аналогичная, конкурирующая разработка – это запущенная практически одновременно JavaFX. Что же позволяет разработчикам Silverlight? Имея опыт работы с XAML в программировании – использовать его на полную катушку, позволяя себе манипулировать с векторной графикой, анимацией и видео. Сама по себе Silverlight – это подмножество Windows Presentation Foundation со всеми вышеупомянутыми возможностями. Она также включает в себя полную версию .NET CLR, называемую CoreCLR, что позволяет писать в Silverlight на любом из языков программирования .NET.
Сильверлайт является кросс-платформенной средой разработки и реализован для ОС семейства Windows, Mac OS 10.4 и выше. Проблема совместимости, на данный момент, заключается в частичном отсутствии поддержки Opera, которым пользуется огромное количество пользователей. Здесь у Flash’а несомненное преимущество – его полная кроссплатформенность. Однако вышедший недавно Silverlight 2 Beta 1 работает в последней версии Opera 9.50 для Windows. Но, конечно же, для полной стабильности придется ждать финальной версии.
Первая бета-версия Microsoft Silverlight была выпущена в декабре 2006 года. Первая стабильная версия – в середине 2007 года. В отличие от большинства продуктов Microsoft – Silverlight имеет часть Dynamic Language Runtime доступным на условиях OpenSource кода.
Несколько дней назад, 16 мая, под эгидой проекта Mono разработчики выпустили версию плагина Silverlight на базе открытого ПО для операционных систем Linux. Называется эта разработка Moonlight. О ней чуть ниже.
5-го марта текущего года была выпущена бета-версия Silverlight 2.0, включенная в Microsoft Visual Studio 2008. Последняя имеет следующие полезные возможности:
Шаблоны для проектов Visual Basic и C#.
Интеллисенс и генераторы кода для XAML.
Отладка приложений.
Поддержка Web reference.
Интеграция с Expression Blend.
А вот в самом втором Сильверлайте было сделано много полезных и приятных дополнений, таких как:
Разработчики могут писать на любом .NET-языке: VB, C#, JavaScript, IronPython и IronRuby.
Легче встраивать UI-элементы (как часть WPF UI Framework), добавились рич-контролы (TextBox, CheckBox, RadioButton, Slider, ScrollViewer, Calendar, DatePicker и т.п.).
Поддержка ‘rich networking’: поддержка вызовов REST, WS*/SOAP, POX, RSS и других стандартных HTTP-сервисов. Тут же упомяну, ещё раз, и о кросс-доменном доступе к различным ресурсам.
Rich Base Class Library, включающая гигантскую функциональность (коллекции, IO, потоки, глобализацию, XML и т.п.), а также возможность использовать API для HTML DOM/JavaScript-интеграции с .NET-кодом.
Silverlight 2 не потребует от вас установки .NET Framework на ваш компьютер, ибо установщик (к слову сказать вес оного значительно выше, чем первой версии — 4.3MB) имеет всё необходимое.
Раз уж мы упомянули Silverlight в свете сравнения c Flash – стоит посмотреть, в чем же заключаются различия между этими инструментами создания Rich Internet Applications (функционально богатых приложений).
Сейчас компания Adobe выпустила прямого конкурента Сильверлайту – это язык и среда разработки Flex, ей мы как-нибудь посвятим отдельную статью. А вот это – список сравнение Silverlight и Flash:
SilverLight не требует установки видео кодека для проигрывания видео формата .WMF
Flash требует наличие кодека для проигрывания .WMF видео. Также есть ограничения по проигрыванию других форматов видео.
Silverlight поддерживает полноэкранное видео.
Flash не поддерживает масштабируемое полноэкранное видео.
Silverlight использует анимационную модель — WPF, которая основывается на времени а не на кадровой анимации.
Flash использует покадровую анимацию.
Silverlight не поддерживает GIF и BMP форматы. Поддерживаются только JPG и PNG форматы графических файлов.
Flash на сегодняшний день поддерживает все графические форматы.
Silverlight позволяет встраивать текст в свой проект, и устанавливать его с загрузкой объекта.
Во Flash работь со шрифтами довольно сложно.
Silverlight использует XAML, и он пока декларативный.
Flash — ActionScript
Silverlight не позволяет пока работать с пиксельной графикой, и использовать различные эффекты и фильтры.
Flash позволяет это делать уже с 8 версии
Silverlight использует XAML который основывается на текстовой информации, и может быть леко изменен используя простые XML объекты.
Flash использует бинарные (двоичные) формы записи.
Silverlight позволяет использовать различные технологии при создании проекта — JavaScript, C#.
Flash позволяет использовать только программные возможности ActionScript.
Используя Silverlight Streaming вы можете создать полноценный видеой cайт, используя бесплатный сервис.
Ни один потоковый сервис не доступен бесплатно во Flash.
Несмотря на то, что сопоставление Сильверлайт и Флеш – очень частое явление, далеко не всем оно кажется верным. Действительно – Silverlight можно использовать с примерно теми же целями, что и Flash, однако первый больше похож на современный легковесный аналог Java-апплетов с поддержкой прогрессивных технологий создания UI. Общая тенденция, назовем ее, цель, технологии Silverlight – это мягкое «утолщение» веб-клиента и уход популярных сейчас технологий Javascript/AJAX/Flash.
В этом же векторе развиваются и Adobe AIR вкупе с Mozilla Prism, однако с некоторыми различиями. Если основной целью AIR & Prism является «одомашнивание интернета», то Silverlight пытается полностью приручить именно веб.
Сам Microsoft Silverlight реализован очень элегантно. При его создании всем было понятно, что написать плагин в браузер для поддержки аналога Java-апплетов, только основанном на .NET – несложно. Естественно – сам фреймворк при этом обладает немаленьким весом и установлен не у каждого пользователя. Поэтому программисты Microsoft поступили следующим образом – реализовали апплет, отвечающий в браузере за Silverlight 2.0, содержит в себе внушительную часть фрейморвка, необходимую для нормальной работы Silverlight-приложений. И обладает, при этом, весом меньше 5 мб, хотя на сайте и написано: 1 мб (здесь служащие редмондского гиганта приукрасили – они любят).
Для Сильверлайт-разработки понадобятся:
Плагин для браузера. Его бета-версию можно скачать тут. Доступны версии для Windows (IE, Opera, Firefox) и Mac OS X.
Silverlight SDK, содержащая инструменты и документацию. Доступна для скачивания тут.
Silverlight Tools for Visual Studio – удобное дополнение, позволяющее разрабатывать SL-проекта прямо в IDE Visual Studio. Версия Express пока не поддерживается, но эта возможность будет в финальной версии продукта.
Microsoft Expression Blend 2.5 March 2008 Preview – нечто среднее, между средой разработки и графическим редактором разработки WPF приложений.
Из интересных разработок, напрямую касающихся Silverlight, стоит отметить недавний релиз закрытой бета-версии Popfly.
Popfly – это Silverlight-приложение, позволяющее пользователю создавать машапы, виджеты и другие приложения, используя простой веб-интерфейс. Все подобные проекты появились на волне успеха Yahoo Pipes – инструмента создания все тех же машапов и мини-приложений с помощью drag’n’drop интерфейса. Microsoft пришла в эту нишу рынка своевременно и, по мнению авторитетного TechCrunch, сейчас опережает всех своих конкурентов.
А опережает она их по одной простой причине – предоставление большего количества возможностей. В Popfly можно создавать машапы, приложения, веб-страницы, виджеты, объединять все это в социальную сеть (как часть платформы Live Spaces). В Live Spaces, в свою очередь, можно объединиться с другими пользователями и создателями приложений. В общем – всесторонняя связь. Кроме этого – с недавнего времени PopFly умеет не только «дружить» сервисы, но и создавать «казуальные» игры, причем делать это могут даже те, кто никогда ранее подобным не занимался.
Изначально начинающему игростроителю доступен набор из более чем 15 шаблонов игр, сотен картинок, анимаций, звуков и других элементов будущих игр. Все это создается и редактируется в понятном визуальном режиме. Там же можно и поиграть.
Интерфейс – заставляет застыть от изумления. Создание и управление происходит путем перетаскивания и соединения блоков, как показано на скриншоте:
Каждый блок выступает в роли модуля, использующего API веб-сервиса. Сегодня таких блоков – несколько десятков, что предоставляет широкие возможности работы с различными сервисами.
Как и обещалось – пара слов о Moonlight. Это результат совместного сотрудничества Microsoft и Novell, минувшей осенью заключивших соглашение, основной идеей которого было: портирование Silverlight-приложения на операционные системы Linux.
И совсем недавно состоялся релиз Moonlight 1.0. Он позволяет запускать приложения, написанные на Silverlight 1.0, но сейчас, параллельно с веткой Silverlight 1.1 Alpha – Silverlight 2 Beta 1 идет работа над следующими версиями Moonlight.
Еще одной интересной деталью, касающейся Microsoft Silverlight является запуск интернет-вещания первого канала на основе этой технологии. С 9-го октября 2007 года широкая аудитория может ознакомиться с преимуществами этого решения. Исполнителем заказа выступала компания SMS Media Solution, которой помогало российское представительство Microsoft. Ну а последним маленьким достижением была трансляция инаугурации нового президента России Дмитрия Медведева в прямом эфире с использованием… чего? Silverlight. Трансляцию можно было внедрить в любой сайт, поддерживающий iframe, путем простой вставки куска кода.
Редактор авторитетного онлайн-издания ReadWriteWeb, Ричард МакМанус, в своем прогнозе на 2008 год отмечал, что технологии, подобные Silverlight будут набирать все больше поклонников: разработчиков и пользователей. Особенно принимая в расчет тот факт, что Microsoft не поленилась и портировала Silverlight на мобильные устройства. В марте Nokia анонсировала поддержку технологии в своих телефонах серий S40 и S60, а также в Nokia 770 и n8x0. Дополнение в них доступно в виде плагина для браузеров поддерживаемых платформ.
Естественно – даже не каждый пятый пойдет пытаться создать свое приложение на Silverlight только для того, чтобы увидеть его возможности воочию. К тому же – как собственными глазами увидеть возможности Сильверлайт как платформы для разработки интерактивных бизнес-решений.
По этой причине Microsoft запустила сайт для работы больницы. Patient Journey Demonstrator – это проект британского отделения Microsoft, уже готовый для предварительного публичного просмотра. Это не финальная версия, однако основной функционал доступен и представляет некоторый интерес.
Приложение состоит из трех частей, вместе представляющих «один день из жизни медицинского учреждения со стороны различных пользователей». Полностью интерактивный интерфейс проведет вас через все приложение, а встроенный «гид» покажет, как воспользоваться всеми возможностями.
Посмотреть действительно есть на что, можно отметить хотя бы работу с кардиограммами с использованием технологии DeepZoom – много графической информации, которая легка в использовании.
До недавнего времени Microsoft продвигала свой продукт, в основном, силами партнеров и в деле создания альтернативы технологии Flash добилась определенных успехов. Как минимум – плагин Silverlight можно установить в любой браузер, однако критическая масса никак не набиралась. И несколько дней назад корпорация нанесла мощный удар, который может изменить ситуацию.
Вместе с началом тестирования нового сайта Microsoft Download Center, который создан с использованием Silverlight, каждый пользователь, заходящий на ресурс, будет получать предложение о скачивании и установке плагина Сильверлайт, в ином случае часть контента и функционала сайта ему будет недоступна.
Ссылки по теме
Источник: hostinfo.ru