Microsoft Silverlight — это устаревшая [5] [6] среда разработки приложений, разработанная для написания и запуска многофункциональных интернет-приложений , похожая на среду выполнения Adobe , Adobe Flash . В то время как ранние версии Silverlight были сосредоточены на потоковом мультимедиа , более поздние версии поддерживали мультимедиа , графику и анимацию, а также предоставляли разработчикам поддержку языков командной строки и инструментов разработки . Silverlight была одной из двух платформ разработки приложений для Windows Phone , но веб-страницы, использующие Silverlight, не работали в версиях Internet Explorer для Windows Phone или Windows Mobile , поскольку на этих платформах не было плагина Silverlight для Internet Explorer. [7]
Microsoft прекратила поддержку Silverlight в Internet Explorer 11 (последнем оставшемся веб-браузере, все еще поддерживающем Silverlight) 12 октября 2021 года.
С момента первого запуска в 2007 году обозреватели сравнивали продукт с Adobe Flash (поддержка которого уже прекращена). [8] [9]
По данным statowl.com, уровень проникновения Microsoft Silverlight в мае 2011 года составил 64,2%. Использование в июле 2010 года составило 53,6%, тогда как по состоянию на май 2011 года [обновлять]лидер рынка Adobe Flash был установлен в 95,3% браузеров, а Java поддерживалась в 76,5% браузеров. [10] Поддержка этих плагинов не является взаимоисключающей; одна система может поддерживать все три.
Silverlight использовался для обеспечения потокового видео для освещения NBC летних Олимпийских игр 2008 года в Пекине [11] , зимних Олимпийских игр 2010 года в Ванкувере [12] и съездов 2008 года обеих основных политических партий США. [13] Silverlight также использовался Amazon Video и Netflix для их мгновенных сервисов потокового видео [14] [15] но Netflix заявил в своем техническом блоге в 2013 году, что, поскольку Microsoft объявила об окончании поддержки Silverlight , они перейдут на HTML-видео . [16]
Отраслевые обозреватели объявили о смерти Silverlight еще в 2011 году. [17] Внутри компании даже сторонники технологии считали, что концепция Extensible Application Markup Language была плохой идеей с самого начала. [18] [ оспаривается – обсудить ]
В 2012 году Microsoft объявила Silverlight устаревшим для HTML5 в Windows 8 , [18] но по состоянию на начало 2015 года было неясно, какова официальная позиция Microsoft относительно будущего Silverlight. [19] В июле 2015 года в сообщении в блоге Microsoft было разъяснено, что «… мы призываем компании, использующие Silverlight для мультимедиа, начать переход к проектам на основе DASH/MSE/CENC/EME». [6] Microsoft планировала прекратить поддержку Silverlight 12 октября 2021 года. [20] Поддержка IE7–8 была прекращена в период с 2014 по 2016 год в зависимости от ОС . [21] Поддержка IE9 и IE10 также прекращена [21] «или через [sic] жизненный цикл поддержки базовых браузеров, [22] в зависимости от того, что короче». [20] Для Microsoft Edge нет плагина Silverlight . [6] [21] Он не поддерживается Google Chrome с сентября 2015 года [21] [23] и Firefox с марта 2017 года. [24]
С конца 2023 года [обновлять]менее 0,02% сайтов использовали Silverlight, [25] менее 1,3% использовали также прекращенный Adobe Flash Player, [26] и менее 0,03% использовали клиентскую часть Java (в то время как менее 4,7% использовали серверную часть Java). [27] [28]
Silverlight предоставляет графическую систему с сохраненным режимом , похожую на Windows Presentation Foundation (WPF), и интегрирует мультимедиа , графику , анимацию и интерактивность в единую среду выполнения. В приложениях Silverlight пользовательские интерфейсы объявляются на языке Extensible Application Markup Language (XAML) и программируются с использованием подмножества .NET Framework . XAML можно использовать для разметки векторной графики и анимации. Silverlight также можно использовать для создания гаджетов боковой панели Windows для Windows Vista . [29]
Silverlight поддерживает видео H.264 , [30] Advanced Audio Coding , Windows Media Video (WMV), Windows Media Audio (WMA) и медиаконтент MPEG Layer III (MP3) [31] во всех поддерживаемых браузерах без необходимости использования Windows Media Player , элемента управления ActiveX Windows Media Player или подключаемых модулей браузера Windows Media . Поскольку Windows Media Video 9 является реализацией стандарта VC-1 Общества инженеров кино и телевидения (SMPTE) , Silverlight также поддерживает видео VC-1. Согласно лицензионному соглашению с конечным пользователем, VC-1 и H.264 лицензируются только для «личного и некоммерческого использования потребителем». [32] Silverlight позволяет динамически загружать контент Extensible Markup Language (XML), которым можно управлять через интерфейс Document Object Model (DOM), метод, который соответствует обычным методам Ajax . Silverlight предоставляет объект Downloader , который можно использовать для загрузки контента, такого как скрипты, медиаресурсы или другие данные, которые могут потребоваться приложению. [33] В версии 2 программная логика может быть написана на любом языке .NET , включая некоторые ядерные эволюции распространенных динамических языков программирования, таких как IronRuby и IronPython . [34]
Свободная программная реализация (ныне заброшенная) [35] под названием Moonlight , разработанная Novell в сотрудничестве с Microsoft, была выпущена для того, чтобы принести функциональность Silverlight версии 1 и 2 в Linux , FreeBSD и другие платформы с открытым исходным кодом, хотя некоторые дистрибутивы Linux не включали ее, ссылаясь на проблемы с распространением и патентами . [36] Однако в мае 2012 года Moonlight был заброшен из-за его недостаточной популярности. [37]
В течение примерно пяти лет Microsoft выпустила пять версий с различной поддержкой платформ: первая версия была выпущена в 2007 году, а пятая (и последняя) основная версия — 8 мая 2012 года. Она совместима с более поздними версиями веб-браузера Internet Explorer в операционных системах Microsoft Windows (кроме Windows RT ) [38] , с Safari в Apple macOS и с мобильными устройствами, использующими платформы Windows Mobile [39] и Symbian (Series 60) [40] .
Кроссплатформенная поддержка Mozilla Firefox для Silverlight была удалена в Firefox 52, выпущенном в марте 2017 года, когда Mozilla удалила поддержку плагинов NPAPI , [41] [42] приведя ее в соответствие с удалением поддержки плагинов NPAPI в Google Chrome. [43] [44]
Silverlight требует процессор x86 с поддержкой Streaming SIMD Extensions (SSE). Поддерживаемые процессоры включают Intel Pentium III и выше, AMD Athlon XP и выше, а также более новые AMD Duron .
В следующей таблице представлена матрица доступности и совместимости версий Silverlight для различных операционных систем и веб-браузеров.
Поддержка Opera была обещана с 3 мая 2007 года, когда Дэвид Стори, главный веб-открыватель в Opera, показал постер Microsoft для конференции MIX , на котором была показана интеграция Opera как часть Silverlight 1.1. [52] Однако Opera никогда официально не поддерживалась Silverlight.
В Linux и FreeBSD эта функциональность была доступна через Moonlight и Pipelight , [53] [54] хотя оба проекта с тех пор были прекращены. Moonlight доступен для основных дистрибутивов Linux с поддержкой браузеров Firefox , Konqueror и Opera, при условии, что он был получен через Novell. [55] Мигель де Икаса выразил заинтересованность в сотрудничестве с разработчиками из других операционных систем (BSD, Solaris) и других браузеров (Konqueror, WebKit и Opera), чтобы гарантировать, что Moonlight нормально работает на их системах. [56] Доступность Moonlight версии 1.0 для FreeBSD была объявлена в марте 2009 года, [57] но с тех пор сообщалось, что она фактически не работает. [58] По состоянию на 2011 год [обновлять]текущая версия Moonlight (4 Preview 1) официально не работает на новых версиях Firefox (новее 3.x) в операционных системах на базе Linux. Однако его можно установить неофициальным способом (например, с помощью Add-on Compatibility Reporter, архивировано 1 мая 2012 г., в дополнении Wayback Machine ), и с Firefox 11 он работает правильно после установки. Как отмечено выше, проект Moonlight был заброшен в мае 2012 г.
Плагин браузера Pipelight, используемый для обеспечения доступа к Silverlight. Pipelight требует поддержки браузером плагинов NPAPI, от которых отказались более новые версии Firefox, Chrome и Opera. С 2018 года проект Pipelight был прекращен. [59]
Silverlight не был доступен на Android и iOS , наиболее распространенных операционных системах на мобильном рынке .
Silverlight был основной средой разработки для Windows Phone (которая к настоящему времени прекращена) и основан на Silverlight 4. Для предыдущих версий Windows Mobile первый Community Technology Preview (CTP) для Windows Mobile 6 ожидался во втором квартале 2008 года, но до сих пор официально не анонсирован. Microsoft прекратила фокусироваться на внедрении Silverlight в Windows Mobile 6.x. [60] Nokia объявила о планах сделать Silverlight для мобильных устройств доступным для S60 на Symbian OS , а также для устройств Series 40 и интернет-планшетов Nokia [61] [62] (хотя позже она продала бизнес Microsoft и теперь продает планшеты Android и будет продавать смартфоны под брендом Alcatel-Lucent ). Silverlight для мобильных устройств поддерживает контент Silverlight 2 и языки .NET. [39] Silverlight для Windows Phone 7.5 основан на Silverlight 4. [63]
Приложения Silverlight могут быть написаны на любом языке программирования .NET. Таким образом, любые инструменты разработки , которые могут использоваться с языками .NET, могут работать с Silverlight, при условии, что они могут быть нацелены на Silverlight CoreCLR для размещения приложения вместо .NET Framework CLR. Microsoft позиционирует Microsoft Expression Blend как сопутствующий инструмент для Visual Studio для проектирования приложений пользовательского интерфейса Silverlight. Visual Studio можно использовать для разработки и отладки приложений Silverlight. Чтобы создавать проекты Silverlight и позволить компилятору нацеливаться на CoreCLR, Visual Studio требуются Silverlight Tools for Visual Studio . [64]
Элемент управления Silverlight — это файл формата ZIP с расширением .XAP, содержащий список из одной или нескольких управляемых сборок .NET (файлов .DLL) вместе с файлом AppManifest.XAML, содержащим этот список вместе с точкой входа (класс и сборка). Он может быть размещен в любом HTML-файле с использованием тега объекта, например:
< object data = "data:application/x-silverlight-2," type = "application/x-silverlight-2" width = "100%" height = "100%" > < param name = "source" value = "MySilverLightControl.xap" /> </ object >
Проект Silverlight содержит файлы Silverlight.js и CreateSilverlight.js , которые инициализируют подключаемый модуль Silverlight для использования на страницах HTML, файл XAML для пользовательского интерфейса и файлы code-behind для кода приложения. Приложения Silverlight отлаживаются аналогично приложениям ASP.NET. Функция Visual Studio CLR Remote Cross Platform Debugging может использоваться для отладки приложений Silverlight, работающих на другой платформе. [65]
В связи с выпуском Silverlight 2, Eclipse был добавлен в качестве опции инструмента разработки. [66]
В отчете PC World за апрель 2007 года говорилось, что Microsoft намеревалась выпустить определенные части исходного кода Silverlight как программное обеспечение с открытым исходным кодом , [67] но неделю спустя Сэм Рамджи, директор по стратегии платформенной технологии в Microsoft, опроверг слухи, подтвердив, что компания не планирует открывать Silverlight. [68] Некоторые элементы управления, которые поставляются с Silverlight, доступны по лицензии Microsoft Public License как часть отдельного проекта, известного как Silverlight Toolkit . [69]
На момент появления, проприетарная природа Silverlight вызывала беспокойство у конкурентов из-за ее потенциального вреда открытой природе Всемирной паутины . Сторонники свободного программного обеспечения также были обеспокоены тем, что Silverlight может стать еще одним примером стратегии Microsoft «принять, расширить и уничтожить» . [70] И Microsoft Silverlight, и Adobe Flash являются проприетарными. [71] Форматы файлов Flash являются публично документированными стандартами, [72] [73] как и Silverlight. [74] [75] Silverlight, как и другие веб-технологии, использует запатентованные аудио- и видеокодеки .
Команда Mono прекратила разработку Moonlight , бесплатной и открытой реализации сред выполнения Silverlight 1 и 2. [76] Разработка была прекращена в 2012 году из-за плохого принятия Silverlight и ограничений, наложенных Microsoft. [ 77 ]
Проект был официально поддержан корпорацией Microsoft, которая [53] в рамках соглашения с Novell предоставила команде Mono непублично доступные дополнительные спецификации, доступ к API библиотеки базовых классов Silverlight, двоичным кодекам и тестовым случаям. [54] [78]
« Соглашение », по которому Novell был предоставлен этот эксклюзивный доступ, также оговаривало условия, несовместимые с лицензированием , которое охватывает большую часть свободного и открытого программного обеспечения . Например, оно конкретно требовало, чтобы программное обеспечение было «получено непосредственно от Novell или через промежуточного получателя» и чтобы оно «не было лицензировано по GPLv3 или аналогичной лицензии». [55] Некоторые сторонники свободного программного обеспечения критиковали соглашение. [79]
Silverlight критиковали за то, что он не выполнил обещаний по совместимости с кроссплатформенными операционными системами , особенно на системах Linux, по сравнению с его обширной поддержкой на настольных компьютерах Apple и Microsoft для Internet Explorer, Firefox и Chrome. Хотя Microsoft официально сотрудничала в проекте Moonlight, Брюс Чизен , генеральный директор Adobe Systems , которая продает конкурирующую фирменную платформу Flash, усомнился в «обязательстве Microsoft поддерживать совместимость платформы Silverlight с другими ОС, помимо Windows ». [80] Его опасения основаны на «примерах из истории», где он сказал, что Microsoft выпустила продукты с обещаниями постоянной кроссплатформенной совместимости, которые больше не действуют, например, Internet Explorer для UNIX и Windows Media Player для Mac .
В 2007 году Калифорния и несколько других штатов США обратились к окружному судье с просьбой продлить большую часть антимонопольного урегулирования дела Microsoft еще на пять лет, [81] ссылаясь на «ряд опасений, включая опасения, что Microsoft может использовать следующую версию Windows , чтобы «склонить игровое поле» в сторону Silverlight, своего нового конкурента Adobe Flash », — говорится в статье Seattle Post-Intelligencer . Окончательное решение по ходатайству продлило урегулирование на два года, до ноября 2009 года, но по причинам, не связанным с Silverlight. [82]
Мы призываем компании, использующие Silverlight для медиа, начать переход на проекты на основе DASH/MSE/CENC/EME
Начиная с 12 января 2016 г. только самая последняя версия Internet Explorer, доступная для поддерживаемой операционной системы, получает техническую поддержку и обновления безопасности.
{{cite web}}
: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )«Последующий получатель» означает организацию или лицо, которое использует по назначению реализацию Moonlight, полученную непосредственно от Novell или через промежуточного получателя… Microsoft оставляет за собой право обновлять (включая прекращение) вышеуказанное соглашение… «Реализация Moonlight» означает только те конкретные части Moonlight 1.0 или Moonlight 1.1, которые работают только как подключаемый модуль к браузеру на персональном компьютере и не лицензируются по лицензии GPLv3 или аналогичной лицензии.
мы будем поддерживать Firefox и Linux (это наша первая цель), но мы с нетерпением ждем возможности поработать с разработчиками других операционных систем (BSD, Solaris) и других браузеров (Konqueror, WebKit и Opera), чтобы гарантировать, что Moonlight будет работать нормально на их системах.
Версия 1.0; Применимо к: Windows® Phone 7
для Windows Phone OS 7.1 основан на Silverlight 4. Это означает, что если вы создадите новое приложение Silverlight для Windows Phone, ориентированное на Windows Phone OS 7.1, вы сможете воспользоваться несколькими новыми функциями.
придерживаются более мрачного взгляда на намерения Microsoft и утверждают, что Silverlight — это просто перефразировка стратегии компании 1990-х годов "охват и расширение" для упреждения веб-конкуренции. "Они все еще играют в те же игры", — сказал Майкл Нельсон, профессор интернет-исследований в Джорджтаунском университете. "Это способ заблокировать контент, и он не позволяет столько инноваций, сколько нам хотелось бы видеть".
Mozilla Europe предупредил, что компаниям, создающим веб-сайты, следует остерегаться фирменных мультимедийных технологий, таких как Adobe Flash и Microsoft Silverlight.
защищен от угроз, только если вы получаете его от Novell И НЕ ПЕРЕДАЕТЕ ЕГО ДАЛЬШЕ, поскольку нет никакой защиты для последующих получателей... Если только эти последующие получатели не получат его от "промежуточного получателя", определенного как включающего только авторизованных реселлеров... Это как зайти в магазин и сказать: "Я собираюсь заплатить только половину суммы, которую я должен, и настоящим отказываюсь от своей обязанности платить полную цену". Вы можете попробовать это, но закон заменяет любое намерение или желание, которое вы выразили. Как минимум, это показывает, насколько ясно они НЕ хотят сосуществовать с кодом под лицензией GPL.