Silverlight

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск
Silverlight
Логотип Microsoft Silverlight
Разработчик Microsoft
Написана на Комбинация C++ и C#
ОС Windows, Mac OS X
Версия 2.0.40115.0 — 19 февраля 2009
Тестовая версия 3.0.40307.0 — 18 марта 2009
Лицензия MS EULA, с компонентами MS-PL
Сайт www.microsoft.com/silverlight

Microsoft Silverlight — это плагин для браузера, который позволяет запускать приложения, содержащие анимацию, векторную графику и аудио-видео ролики, что характерно для RIA (Rich Internet application). Версия 2.0, выпущенная в октябре 2008, добавила поддержку для языков .NET[1][2] и интеграцию с IDE. Microsoft выпустили бета версию Silverlight 3.0 18 марта 2009.

Silverlight реализован для ОС Windows 2000[3], Windows XP, Windows Server 2003, Windows Vista, Windows 7, Mac OS X 10.4, Mac OS X 10.5 и браузеров Internet Explorer 6.0/7.0/8.0, Mozilla Firefox 1.5/2.0/3 и Safari 3.1. В будущем также планируется поддержка Opera[4], мобильных устройств, начиная с Windows Mobile 6 и Symbian (Series 60), и, возможно, других платформ[5].

Содержание

[править] Обзор

Silverlight предоставляет графическую систему, схожую с Windows Presentation Foundation, и обьединяет мультимедиа, графику, анимацию и интерактивность в одной программной платформе. Он был разработан чтобы работать с XAML и с языками Microsoft .NET. XAML используется для разметки страниц с помощью векторной графики и анимации. Текст, содержащийся в Silverlight приложениях, доступен для поисковых систем, так как он не компилируется, а доступен в виде XAML. Silverlight также можно использовать для того, чтобы создавать гаджеты для Windows Sidebar в Windows Vista.[6]

Silverlight поддерживает воспроизведение WMV, WMA и MP3[7] для всех поддерживаемых браузеров, не требуя при этом дополнительных компонентов, таких как Windows Media Player. Так как Windows Media Video 9 является реализацией стандарта SMPTE VC-1, Silverlight поддерживает видео VC-1, только внутри контейнера ASF. Кроме того, лицензионное соглашение говорит, что VC-1 разрешено использовать только в личных, некомерческих целях («personal and non-commercial use of a consumer»).[8] Silverlight позволяет динамически загружать XML и использовать DOM для взаимодействия с ним так же, как это делается в Ajax. Silverlight содержит обьект Downloader, благодаря которому можно скачивать скрипты, медиа файлы и т. д., если это необходимо приложению.[9] Начиная с версии 2.0, логика программы может быть описана в любом из языков .NET, включая динамические языки программирования такие как Iron Ruby и Iron Python.

[править] История

[править] Silverlight 1.0 Beta

Первая бета-версия Silverlight была выпущена в декабре 2006 года. Microsoft рассчитывала выпустить стабильную версию в середине 2007 года. Ходили слухи что в Microsoft планируется частичное открытие исходного кода Silverlight[10], однако они были опровергнуты Сэмом Рамджи (Sam Ramji) директором Microsoft по стратегии технологической платформы[11]. Тем не менее часть Dynamic Language Runtime включённая в Silverlight, доступна на портале Microsoft для хостинга открытых и проприетарных проектов CodePlex[12] под Microsoft Permissive License.

[править] Silverlight 1.0

Архитектура Silverlight 1.0 приложения

Silverlight v.1.0 является подключаемым модулем обозревателя для обработки XAML плюс кодеки, для воспроизведения мультимедийного содержимого в форматах WMV, WMA и MP3. Он представляет обозревателю внутреннюю модель DOM, управляемую из JavaScript кода. Язык XAML основан на XML, поэтому документ, определяющий загружаемый клиенту пользовательский интерфейс — текстовый и вполне пригоден для индексирования поисковыми системами. Используя представленную модель DOM, JavaScript может динамически обновлять содержимое Silverlight, аналогично DHTML. Также можно вызывать методы управления презентацией (запуска анимации или приостановки воспроизведения видео, например).

Silverlight приложение начинается с вызова объекта Silverlight из HTML страницы, загружающего XAML файл. XAML файл содержит объект Canvas, выступающий подложкой для других элементов. Объекты XAML способны генерировать события, перехватываемые из JavaScript.

В комплекте к Visual Studio 2005 SP1 прилагаются «Silverlight Tools for VS 2005».

[править] Версия для Linux

Участники проекта Mono 16 мая 2008 года выпустили реализацию плагина Silverlight на базе открытого ПО, работающую на Linux[13][14] — Moonlight, однако ни открытым, ни свободным ПО она считаться не может, так как разрешение на использование патентов предоставляется только получателям кода от Novell, и только для создания плагинов[15]. Moonlight 2.0 находится в состоянии Preview 3.[16]

[править] Silverlight 2.0

Версия Silverlight 2.0 была выпущена 14 октября 2008 года и включала в себя подмножестово библиотек .NET Framework.

Кроме этого доступны для скачивания Microsoft Silverlight Tools for Visual Studio 2008, которые включают в себя:

  • Шаблоны для проектов Visual Basic и C#
  • Интеллисенс и генераторы кода для XAML
  • Отладку приложений Silverlight
  • Поддержку Web reference
  • Интеграцию с Expression Blend

[править] Silverlight 3.0

18 марта 2009 года на конференции MIX09 Лас-Вегасе Microsoft продемонстрировала бета-версию, в настоящее время доступную для скачивания на её сайте.[17][18]

Среди особенностей новой версии:

  • Поддержка устройств с multitouch-интерфейсом
  • Поддержка форматов H.264, AAC и MPEG-4
  • Поддержка аппаратного ускорения при работе с трехмерной графикой. Это позволяет задействовать потенциал графического процессора и снизить нагрузку на центральный процессор

[править] Совместимость с операционными системами и браузерами

В следующей таблице отражена совместимость Silverlight различных версий с браузерами и операционными системами.

ОС/Браузер IE 6 SP1 IE 6 SV1 IE 7 IE 8 Firefox SeaMonkey Safari Konqueror Opera Google Chrome
Windows Vista/2008 1.0, 2.0, 3.0 2.0, 3.0 1.0, 2.0 2.0 1.0, 2.0; через NPAPI Неофициально[19][20] 2.0
Windows XP/2003/Home Server 1.0, 2.0, 3.0 1.0, 2.0 2.0 1.0, 2.0 1.0, 2.0; через NPAPI Неофициально[19][20] 2.0
Windows 2000 2.0 2.0 Неофициально[21] 2.0; через NPAPI Запланирована[19]
Windows Mobile 6 2.0[источник не указан 39 дней]
Mac OS 10.4/10.5 PowerPC 1.0 1.0 Запланирована[19]
Mac OS 10.4/10.5 Intel 1.0, 2.0 1.0, 2.0 Запланирована[19]
  • Opera получит официальную поддержку в следующих версиях.[19] Silverlight уже поддерживает Opera неофициально, с помощью хака.[20]
  • Для ОС Линукс, функциональность будет доступна через Moonlight.[22] Moonlight будет доступен для основных дистрибутивов и поддерживать браузеры Firefox, Konqueror, and Opera. Мигель де Икаса также выразил заинтересованность в работе с разработчиками других операционных систем (BSD, Solaris) и браузеров (Konqueror, WebKit и Opera) чтобы добиться хорошей работы своего плагина на них.[23]
  • Silverlight for Mobile будет использоваться для того, чтобы сделать доступным Silverlight приложения на мобильных устройствах. Первый CTP для Windows Mobile 6 будет выпущен во втором квартале 2008 года.[24] Nokia обьявила о планах выпуска Silverlight for Mobile на S60 для Symbian OS, а также для устроиств на Series 40 и Nokia Internet tablets.[25] Silverlight for Mobile изначально будет поддерживать Silverlight 1.0.[24]
  • Silverlight требует x86-процессор с поддержкой SSE. Поддерживаются процессоры Intel Pentium III и выше, и AMD Athlon XP и выше. Некоторые модели AMD Duron тоже поддерживаются.
  • Также рассматриваются и другие платформы.[5]

[править] Примечания

  1. Code Sample: Is Your Process Using the Silverlight CLR?
  2. Rounding up DLR questions
  3. Только версия 2.0 и под IE6 // http://www.microsoft.com/silverlight/resources/install.aspx?v=2.0#sysreq
  4. Opera Watch: More details on Silverlight support in Opera
  5. 1 2 Joe Stegman. Linux support. MSDN Forums Silverlight General Discussion. Проверено 29 апреля 2007.
  6. Charles Sterling. Writing a Windows Sidebar Gadget in Silverlight dead simple. MSDN Blogs. Проверено 9 марта 2008.
  7. Silverlight FAQs
  8. Microsoft Silverlight 1.0 beta license. Проверено 14 июня 2007.
  9. Using a Downloader Object. Проверено 25 мая 2007.
  10. Microsoft частично откроет код технологии Silverlight
  11. Gavin Clarke. Silverlight glow dimmed by cross-platform concerns
  12. http://www.codeplex.com/
  13. Проект Mono обеспечит совместимость Silverlight с Linux
  14. First Moonlight Release
  15. Shining Some Light on Microsoft’s Moonlight Covenant (англ.). Groklaw (28 мая 2008). Проверено 6 октября 2008.
  16. http://go-mono.com/moonlight-preview/
  17. http://silverlight.net/getstarted/silverlight3/default.aspx
  18. MIX09: Silverlight 3 looks great in (and out of) the browser(англ.)
  19. 1 2 3 4 5 6 Opera Watch: More details on Silverlight support in Opera. Проверено 2 мая 2007.
  20. 1 2 3 Silverlight in Opera. Проверено 10 марта 2008.
  21. Install Silverlight : Unsupported platform, system requirements
  22. Silverlight 1.0 Released and Silverlight for Linux Announced. Проверено 5 сентября 2007.
  23. Miguel de Icaza. Microsoft/Novell Collaboration on Silverlight (5 сентября 2007). — «We will be supporting Firefox and Linux initially (that is our first goal) but we are looking forward to work with developers from other operating systems (BSD, Solaris) and other browsers (Konqueror, WebKit and Opera) to ensure that Moonlight works fine on their systems.»  Проверено 9 ноября 2008.
  24. 1 2 Silverlight for Mobile. Silverlight.net. Проверено 9 марта 2008.
  25. Nokia to enable Silverlight.  ??? (4 марта 2008). Проверено 4 марта 2008.

[править] Ссылки

[править] Литература

  • Мэтью Мак-Дональд, Марио Шпушта. Microsoft ASP.NET 3.5 с примерами на C# 2008 и Silverlight 2 для профессионалов = Pro ASP.NET 3.5 in C# 2008: Includes Silverlight 2. — 3-е изд. — М.: Вильямс, 2009. — 1408 с. — ISBN 978-5-8459-1543-6