Microsoft Silverlight

Поделись знанием:
Перейти к: навигация, поиск
Silverlight
Разработчик

Microsoft Corporation

Написана на

Комбинация C++ и C#

Операционная система

Windows, Mac OS X, Symbian (9.4)

Лицензия

MS EULA, с компонентами MS-PL

Сайт

[www.microsoft.com/rus/silverlight/ rosoft.com/rus/silverlight/]

К:Википедия:Статьи без изображений (тип: не указан)

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

Silverlight была реализована для ОС Windows 2000[3], Windows XP, Windows Server 2003, Windows Vista, Windows 7, Windows 8, Mac OS X 10.4, Mac OS X 10.5, Mac OS X 10.6 и браузеров Internet Explorer, Opera, Mozilla Firefox, Safari, Google Chrome[4]. Silverlight была включена в состав Windows Phone 7[5] и являлась одной из двух программных платформ для этой ОС, однако не поддерживается в мобильной версии браузера Internet Explorer, ни в Windows Phone, ни в Windows Mobile. Поскольку Microsoft Edge не поддерживает плагины, то он не поддерживает и Silverlight[6].

В 2012 году Microsoft назначила конец жизненного цикла Silverlight 5 на 10 декабря 2021 года[7]. В 2013 году Microsoft объявила, что они прекратили развитие Silverlight, за исключением выпуска исправлений ошибок. Silverlight более не поддерживается в браузерах Opera, Mozilla Firefox, Google Chrome, так как в 2015 году в этих браузерах была отключена по умолчанию[8] или полностью прекращена[9] поддержка плагинов формата NPAPI.





Обзор

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

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

История

Разработка Silverlight велась путём последовательного добавления функциональности в каждой новой версии. Так, Silverlight 4 представлял собой надмножество над Silverlight 3, а та в свою очередь являлась надмножеством над Silverlight 2. Код для данной платформы не обладает полной совместимостью между версиями, главным образом из-за вынужденного применения программистами различных обходных путей при отсутствии какой-либо встроенной функциональности. Причём добавление такой функциональности в последующей версии весьма негативно может повлиять на корректную работу примененной ранее «хитрости», из-за чего такой код как правило приходится переписывать.

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

Разработка Silverlight велась под кодовым названием WPF/E (сокращённо от Windows Presentation Foundation Everywhere), что являлось отсылкой к технологии Windows Presentation Foundation. Однако, название было вскоре изменено на более звучное Silverlight[14].

Silverlight 1.0 Beta

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

Silverlight 1.0

Первая версия Silverlight, выпущенная в мае 2007 года, была далека от завершения и фактически не поддерживала .NET-код совсем. Вся основная разработка велась на языке JavaScript, а также присутствовала поддержка небольшого подмножества языка XAML, использовавшегося для описания интерфейса приложений для Silverlight.

Главной задачей Silverlight 1.0 было быстрое создание основы установки подключаемого модуля Silverlight. Кроме того, в этой версии имелись и дополнительные возможности, как, например, возможность создания анимации. Встроенные элементы управления (контролы) отсутствовали (не говоря уже об элементах типа TextBlock), но при помощи контуров программист мог создавать кнопки и другие базовые элементы для своего приложения, вызывавших срабатывание JavaScript-кода. Например, некоторые видеопроигрыватели, полностью написанные под данную версию без применения .NET-кода, были доступны в Интернете и в 2010 году[14].

То есть, по сути Silverlight 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».

В настоящее время уже понятно, что Silverlight 1.0 являлся лишь первым шагом на пути к разработке расширенных интерактивных приложений, тем более, что через некоторое время всё внимание на себя отвлёк выход новой версии — Silverlight 2, ставшей первой версией платформы, поддерживающей .NET[14].

Silverlight 2

Изначально данная версия носила название Silverlight 1.1, но довольно скоро было решено, что ввиду внесённых серьёзных изменений (в том числе и упрощавших процесс версионирования) имело смысл изменить номер версии на целое число.

Silverlight 2 была выпущена 14 октября 2008 года, незадолго до проведения конференции Professional Developer Conference, назначенной на октябрь 2008 года. Данная версия считалась революционной, поскольку впервые включала в себя библиотеки .NET Framework (как подмножество) и была реализована для платформ, отличных от Windows. Также данная версия включала в себя большой набор элементов управления, улучшенную работу с видео, поддержку новых инструментов и другие возможности[14].

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

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

Значительное число возможностей, доступных в последующих версиях (например, в Silverlight 4), было добавлено именно во второй версии платформы[14].

Silverlight 3

18 марта 2009 года на конференции MIX09 в Лас-Вегасе Microsoft продемонстрировала бета-версию. 10 июля 2009 года в ходе мероприятия [seethelight.com See the Light][17] Microsoft объявила об официальном выпуске RTM версии, а вскоре была выпущена и окончательная версия. Таким образом, выход третьей версии состоялся через девять месяцев после выхода второй.

В новую версию были добавлены новые элементы управления и различные возможности, а уровень данных был расширен для обеспечения стабильной основы для сценариев, более ориентированных на бизнес-процессы. В то же время, существующий уровень медиа был расширен за счёт добавления поддержки новых форматов и эффектов (более известных как «пиксельные шейдеры»). На уровне пользователя стало возможным переносить двухмерные элементы в трёхмерное пространство (что иногда называется «псевдо-3D» или «2,5D»). Анимация продвинулась ещё дальше, обеспечивая более плавное и приближённое к реальному воспроизведению. Некоторые шаги были предприняты и в области использования аппаратного ускорения (что само по себе является настоящей проблемой на смешанных платформах, как например, на поддерживаемых Silverlight)[14].

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

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

В целом Silverlight представляет собой урезанный вариант Windows Presentation Foundation, не требующий наличия .NET Framework[18].
При этом возможности приложений Silverlight почти безграничны, всю недостающую функциональность можно реализовать в виде модулей, используя Silverlight SDK.

Также в Silverlight 3 был впервые представлена функциональность, получивший название «вне браузера» (англ. out-of-the-browser) (сокр. OOB). Реализация данной функциональности обладала серьёзными недостатками: например, OOB-приложения всё ещё не могли получать какие-либо дополнительные права, что весьма ограничивало их действия. Также не было возможности настройки окна OOB-приложения. Тем не менее, сообщество разработчиков встретило данное нововведение весьма положительно[14].

Silverlight 4

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

Краткий список изменений
  • Поддержка браузера Google Chrome.
  • Поддержка веб-камеры и микрофона.
  • Поддержка вывода на печать.
  • Улучшена поддержка мыши. В частности добавлена поддержка правой кнопки.
  • Поддержка показа оповещений.
  • Новые и улучшенные контролы, такие как RichTextBox и улучшеный DataGrid.
  • Поддержка неявного задания тем для контролов.
  • Поддержка встроенного в систему браузера для показа HTML внутри Silverlight, но пока только для офлайн-приложений.
  • Улучшения слоя WCF.
  • Улучшения при локализации двунаправленного текста.
  • Поддержка Managed Extensibility Framework.
  • Улучшения поддержки связывания данных (data binding).
  • Улучшения эффектов анимации.
  • Поддержка буфера обмена и drag&drop.
  • Улучшения производительности Deep Zoom.
  • Сервисы WCF Rich Internet application (RIA).
  • Защита H.264 контента и поддержка проигрывания контента, защищённого DRM, в режиме offline.

Также для приложений запущенных вне браузера и явно получивших статус доверенных (trusted):

  • Полный доступ к клавиатуре при работе в полноэкранном режиме.
  • Программный доступ к локальной папке с документами пользователя.
  • Поддержка локальных COM-объектов.

Silverlight 5

2 декабря 2010 года на конференции Silverlight Firestarter вице-президент подразделения Microsoft Developer Division Скотт Гатри анонсировал выход [www.silverlight.net/getstarted/silverlight-5-beta/ бета-версии Silverlight 5] в первой половине 2011 года. Финальная версия планируется к выходу в конце 2011 года[19][20].

Краткий список изменений

Новые возможности Silverlight 5 включают в себя[19][21]:

  • поддержка графического 3D рендеринга при помощи GPU[21]
  • поддержка ускорения декодирования видео при помощи GPU
  • модель 3D графики базируется на XNA технологии в отличие от «умной» графики WPF и подразумевает использование бесконечного цикла рисования — рендеринга[21]
  • изменяемая скорость воспроизведения медиаконтента с автоматической коррекцией звука
  • улучшенное энергосбережение
  • встроенная поддержка удалённого управления
  • поддержка ускорения запуска приложений
  • поддержка 64-битных ОС
  • поддержка автоматизированного тестирования пользовательского интерфейса приложений (в Visual Studio 2010)
  • улучшенная чёткость текста
  • поддержка отладки выражений, привязанных к данным, возможна установка точек останова на привязках
  • поддержка ковариантности и контравариантности в FCL.

Хронология выхода версий

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

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

ОС/Браузер IE 6 SP1 IE 6 SV1 IE 7 IE 8 Firefox SeaMonkey Safari Konqueror Opera Google Chrome
Windows 8 / 8.1 5 5 (Firefox 12+) Убрана с версии Chrome 45
Windows Vista/2008/7/2008 R2 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 2.0 1.0, 2.0; через NPAPI 4.0 2.0, 3.0, 4.0
Windows XP/2003/Home Server 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 1.0, 2.0, 3.0, 4.0 1.0, 2.0; через NPAPI 4.0 2.0, 3.0, 4.0
Windows 2000 2, 3, 4 2.0 Неофициально[29] 2; через NPAPI Запланирована[30]
Mac OS X PowerPC 1.0 1.0 Запланирована[30]
Mac OS X Intel 1, 2, 3, 4, 5 1, 2, 3, 4, 5 Запланирована[30] Убрана с версии Chrome 39
  • Opera 11 уже работает с Silverlight 4.0.
  • Для ОС Linux функциональность будет доступна через Moonlight[31]. Moonlight будет доступен для основных дистрибутивов и поддерживать браузеры Firefox, Konqueror, и Opera. Мигель де Икаса также выразил заинтересованность в работе с разработчиками других операционных систем (BSD, Solaris) и браузеров (Konqueror, WebKit и Opera)[32].
  • Silverlight for Mobile будет использоваться для того, чтобы сделать доступным Silverlight-приложения на мобильных устройствах. На Silverlight.net было заявлено, что первый CTP для Windows Mobile 6 будет выпущен во втором квартале 2008 года[33]. Nokia объявила о планах выпуска Silverlight for Mobile на S60 для Symbian OS, а также для устройств на Series 40 и Nokia Internet tablets[34]. Silverlight for Mobile изначально будет поддерживать Silverlight 1.0[33].
  • Silverlight требует x86-процессор с поддержкой SSE. Поддерживаются процессоры Intel Pentium III и выше, и AMD Athlon XP и выше. Некоторые модели AMD Duron тоже поддерживаются.
  • Также рассматриваются и другие платформы[35].

Инструменты разработки

Приложения Silverlight могут быть написаны на любом языке программирования .NET. Все инструменты разработки, которые могут быть использованы для разработки на .NET, также могут работать c Silverlight.

Mono Moonlight

Команда разработчиков Mono разрабатывала проект Moonlight. Это свободная реализация Silverlight с открытым исходным кодом.

Adobe Flash

При наличии плагинов можно использовать в своих разработках Adobe Flash.

JavaFX

Сравнение Silverlight, Adobe Flash, JavaFX, HTML5 и Native Client

Напишите отзыв о статье "Microsoft Silverlight"

Примечания

  1. [blogs.msdn.com/jasonz/archive/2007/05/11/code-sample-is-your-process-using-the-silverlight-clr.aspx Code Sample: Is Your Process Using the Silverlight CLR?]
  2. [blogs.msdn.com/jasonz/archive/2007/05/11/code-sample-is-your-process-using-the-silverlight-clr.aspx Rounding up DLR questions]
  3. Только версия 2.0 и под IE6 // www.microsoft.com/silverlight/resources/install.aspx?v=2.0#sysreq
  4. [operawatch.com/news/2007/05/more-details-on-silverlight-support-in-opera.html Opera Watch: More details on Silverlight support in Opera]
  5. [www.silverlight.net/getstarted/devices/windows-phone/ Silverlight for Windows Phone]
  6. [blogs.windows.com/msedgedev/2015/07/02/moving-to-html5-premium-media/ Moving to HTML5 Premium Media].
  7. Microsoft. [support.microsoft.com/en-us/lifecycle?C2=12905 Microsoft Support Lifecycle].
  8. [blog.mozilla.org/futurereleases/2015/10/08/npapi-plugins-in-firefox/ NPAPI Plugins in Firefox]. Future Releases. Проверено 10 января 2016.
  9. [blog.chromium.org/2014/11/the-final-countdown-for-npapi.html The Final Countdown for NPAPI] (en-US). Chromium Blog. Проверено 10 января 2016.
  10. Charles Sterling. [blogs.msdn.com/charles_sterling/archive/2007/05/14/writing-a-windows-sidebar-gadget-in-silverlight-dead-simple.aspx Writing a Windows Sidebar Gadget in Silverlight dead simple]. MSDN Blogs. Проверено 9 марта 2008. [www.webcitation.org/65eROE5XZ Архивировано из первоисточника 23 февраля 2012].
  11. [www.microsoft.com/silverlight/faq.aspx Silverlight FAQs]
  12. [www.microsoft.com/silverlight/license-win.aspx Microsoft Silverlight 1.0 beta license](недоступная ссылка — история). Проверено 14 июня 2007. [web.archive.org/20080725031846/www.microsoft.com/silverlight/license-win.aspx Архивировано из первоисточника 25 июля 2008].
  13. [msdn2.microsoft.com/en-us/library/bb232904.aspx Using a Downloader Object]. Проверено 25 мая 2007. [www.webcitation.org/65eRP3Zvi Архивировано из первоисточника 23 февраля 2012].
  14. 1 2 3 4 5 6 7 [www.informit.com/articles/article.aspx?p=1645871&seqNum=4 A Short History of Silverlight]  (англ.)
  15. [soft.compulenta.ru/317058/ Microsoft частично откроет код технологии Silverlight]  (рус.)
  16. Gavin Clarke. [www.theregister.co.uk/2007/05/01/microsoft_open_source_mix/ Silverlight glow dimmed by cross-platform concerns]  (англ.)
  17. На мероприятии состоялся также выпуск Microsoft Expression Studio 3
  18. [www.microsoft.com/getsilverlight/get-started/install/default.aspx#sysreq Системные требования Silverlight]
  19. 1 2 [weblogs.asp.net/scottgu/archive/2010/12/02/announcing-silverlight-5.aspx Silverlight 5 announcement] (англ.). Проверено 2 декабря 2010. [www.webcitation.org/65eRPoZM6 Архивировано из первоисточника 23 февраля 2012].
  20. [lenta.ru/news/2010/12/03/silverlight/ Microsoft анонсировала новую версию платформы Silverlight]  (рус.)
  21. 1 2 3 [msdn.microsoft.com/en-us/library/gg197424(v=XNAGameStudio.35).aspx 3-D Graphics Overview] (англ.). [www.webcitation.org/65eRQXbtM Архивировано из первоисточника 23 февраля 2012].
  22. [blogs.msdn.com/somasegar/archive/2007/11/29/quick-update-on-silverlight.aspx Quick update on Silverlight] (англ.). Проверено 30 ноября 2007. [www.webcitation.org/65eRRBbe7 Архивировано из первоисточника 23 февраля 2012].
  23. [msfn.org/comments.php?id=22255&catid=1&highlight=silverlight MSFN — Microsoft rolls out Silverlight maintenance release]  (англ.)
  24. Protalinski, Emil [arstechnica.com/journals/microsoft.ars/2008/06/06/silverlight-2-beta-2-arrives-on-time-available-now Silverlight 2 Beta 2 arrives on time, available now] (англ.). Ars Technica. Проверено 6 июня 2008. [www.webcitation.org/65eRRvByX Архивировано из первоисточника 23 февраля 2012].
  25. Knor, Max [blogs.msdn.com/knom/archive/2008/10/14/silverlight-2-released.aspx Silverlight 2 Released] (англ.). blogs.msdn.com. Проверено 21 октября 2008. [www.webcitation.org/65eRSWj8H Архивировано из первоисточника 23 февраля 2012].
  26. [www.liveside.net/main/archive/2008/10/13/microsoft-releases-silverlight-2-on-tuesday-oct-14.aspx Microsoft Releases Silverlight 2 On Tuesday, Oct. 14] (англ.). LiveSide. Проверено 13 октября 2008. [www.webcitation.org/65eRTHGLj Архивировано из первоисточника 23 февраля 2012].
  27. [blogs.msdn.com/usisvde/archive/2010/04/13/business-ready-silverlight-4-ships-april-15.aspx Business-Ready Silverlight 4 Ships April 15] (англ.). [www.webcitation.org/65eRUvAQz Архивировано из первоисточника 23 февраля 2012].
  28. name="Description of the update for Microsoft Silverlight: September 28, 2010 ">[support.microsoft.com/kb/2416427 Description of the update for Microsoft Silverlight: September 28, 2010] (англ.). [www.webcitation.org/65eRacJ3D Архивировано из первоисточника 23 февраля 2012].
  29. [www.microsoft.com/silverlight/resources/install.aspx?reason=unsupportedplatform#sysreq Install Silverlight : Unsupported platform, system requirements]
  30. 1 2 3 [operawatch.com/news/2007/05/more-details-on-silverlight-support-in-opera.html Opera Watch: More details on Silverlight support in Opera](недоступная ссылка — история). Проверено 2 мая 2007. [web.archive.org/20080725005747/operawatch.com/news/2007/05/more-details-on-silverlight-support-in-opera.html Архивировано из первоисточника 25 июля 2008].
  31. [weblogs.asp.net/scottgu/archive/2007/09/04/silverlight-1-0-released-and-silverlight-for-linux-announced.aspx Silverlight 1.0 Released and Silverlight for Linux Announced]. Проверено 5 сентября 2007. [www.webcitation.org/65eRcgh6H Архивировано из первоисточника 23 февраля 2012].
  32. Miguel de Icaza. [tirania.org/blog/archive/2007/Sep-05.html 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. [www.webcitation.org/65eRdNX8r Архивировано из первоисточника 23 февраля 2012].
  33. 1 2 [silverlight.net/learn/mobile.aspx Silverlight for Mobile]. Silverlight.net. Проверено 9 марта 2008. [www.webcitation.org/65eReEzCf Архивировано из первоисточника 23 февраля 2012].
  34. [blog.anta.net/2008/03/04/nokia-to-enable-silverlight/ Nokia to enable Silverlight].  ??? (4 марта 2008). Проверено 4 марта 2008. [www.webcitation.org/65eRenfp4 Архивировано из первоисточника 23 февраля 2012].
  35. Joe Stegman. [forums.microsoft.com/MSDN/ShowPost.aspx?PostID=988552&SiteID=1 Linux support]. MSDN Forums Silverlight General Discussion. Проверено 29 апреля 2007. [www.webcitation.org/68AfCVkzO Архивировано из первоисточника 4 июня 2012].

Ссылки

  • [www.microsoft.com/rus/silverlight/ Официальный сайт]
  • [www.microsoft.com/silverlight/ Официальный сайт] (англ.)
  • [msdn2.microsoft.com/ru-ru/asp.net/bb187358.aspx MSDN Silverlight Developer Center]
  • [silverlight.net/ Сообщество Silverlight] (англ.)
  • Лоуренс Морони. [msdn.microsoft.com/msdnmag/issues/07/06/Silverlight/default.aspx?loc=ru Silverlight: Научитесь создавать более глубокое впечатление в Интернете] (рус.) MSDN Magazine № 6, 2006 год
  • [www.techdays.ru/Category.aspx?Tag=Silverlight Доклады-разработки на платформе Silverlight ]
  • [www.microsoft.com/ru/ru/softmicrosoft/silverlight.aspx Бесплатное и пробное ПО Microsoft® для Silverlight ]
  • [msdn.microsoft.com/ru-ru/library/bb404300.aspx Знакомство с технологией Silverlight (Опубликовано: 30 апреля 2007 г.) ]
  • [msdn.microsoft.com/ru-ru/silverlight/default.aspx Центр разработки Silverlight ]

Литература

  • Мэтью Мак-Дональд. [www.williamspublishing.com/Books/978-5-8459-1784-3.html Silverlight 5 с примерами на C# для профессионалов, 4-е издание] = Pro Silverlight 5 in C#, 4th edition. — М.: «Вильямс», 2012. — 848 с. — ISBN 978-5-8459-1784-3.
  • П. Браун. Silverlight. Практическое руководство = Silverlight 4 in Action. — 1-е изд. — П.: Питер, 2012. — 816 с. — ISBN 978-5-459-00408-3.
  • Мэтью Мак-Дональд. Silverlight 3 с примерами на C# для профессионалов = Pro Silverlight 3 in C#. — 3-е изд. — М.: Вильямс, 2010. — 656 с. — ISBN 978-5-8459-1637-2.

Отрывок, характеризующий Microsoft Silverlight

Le coup de theatre avait rate. [Не удалась развязка театрального представления.]


Русские войска проходили через Москву с двух часов ночи и до двух часов дня и увлекали за собой последних уезжавших жителей и раненых.
Самая большая давка во время движения войск происходила на мостах Каменном, Москворецком и Яузском.
В то время как, раздвоившись вокруг Кремля, войска сперлись на Москворецком и Каменном мостах, огромное число солдат, пользуясь остановкой и теснотой, возвращались назад от мостов и украдчиво и молчаливо прошныривали мимо Василия Блаженного и под Боровицкие ворота назад в гору, к Красной площади, на которой по какому то чутью они чувствовали, что можно брать без труда чужое. Такая же толпа людей, как на дешевых товарах, наполняла Гостиный двор во всех его ходах и переходах. Но не было ласково приторных, заманивающих голосов гостинодворцев, не было разносчиков и пестрой женской толпы покупателей – одни были мундиры и шинели солдат без ружей, молчаливо с ношами выходивших и без ноши входивших в ряды. Купцы и сидельцы (их было мало), как потерянные, ходили между солдатами, отпирали и запирали свои лавки и сами с молодцами куда то выносили свои товары. На площади у Гостиного двора стояли барабанщики и били сбор. Но звук барабана заставлял солдат грабителей не, как прежде, сбегаться на зов, а, напротив, заставлял их отбегать дальше от барабана. Между солдатами, по лавкам и проходам, виднелись люди в серых кафтанах и с бритыми головами. Два офицера, один в шарфе по мундиру, на худой темно серой лошади, другой в шинели, пешком, стояли у угла Ильинки и о чем то говорили. Третий офицер подскакал к ним.
– Генерал приказал во что бы то ни стало сейчас выгнать всех. Что та, это ни на что не похоже! Половина людей разбежалась.
– Ты куда?.. Вы куда?.. – крикнул он на трех пехотных солдат, которые, без ружей, подобрав полы шинелей, проскользнули мимо него в ряды. – Стой, канальи!
– Да, вот извольте их собрать! – отвечал другой офицер. – Их не соберешь; надо идти скорее, чтобы последние не ушли, вот и всё!
– Как же идти? там стали, сперлися на мосту и не двигаются. Или цепь поставить, чтобы последние не разбежались?
– Да подите же туда! Гони ж их вон! – крикнул старший офицер.
Офицер в шарфе слез с лошади, кликнул барабанщика и вошел с ним вместе под арки. Несколько солдат бросилось бежать толпой. Купец, с красными прыщами по щекам около носа, с спокойно непоколебимым выражением расчета на сытом лице, поспешно и щеголевато, размахивая руками, подошел к офицеру.
– Ваше благородие, – сказал он, – сделайте милость, защитите. Нам не расчет пустяк какой ни на есть, мы с нашим удовольствием! Пожалуйте, сукна сейчас вынесу, для благородного человека хоть два куска, с нашим удовольствием! Потому мы чувствуем, а это что ж, один разбой! Пожалуйте! Караул, что ли, бы приставили, хоть запереть дали бы…
Несколько купцов столпилось около офицера.
– Э! попусту брехать то! – сказал один из них, худощавый, с строгим лицом. – Снявши голову, по волосам не плачут. Бери, что кому любо! – И он энергическим жестом махнул рукой и боком повернулся к офицеру.
– Тебе, Иван Сидорыч, хорошо говорить, – сердито заговорил первый купец. – Вы пожалуйте, ваше благородие.
– Что говорить! – крикнул худощавый. – У меня тут в трех лавках на сто тысяч товару. Разве убережешь, когда войско ушло. Эх, народ, божью власть не руками скласть!
– Пожалуйте, ваше благородие, – говорил первый купец, кланяясь. Офицер стоял в недоумении, и на лице его видна была нерешительность.
– Да мне что за дело! – крикнул он вдруг и пошел быстрыми шагами вперед по ряду. В одной отпертой лавке слышались удары и ругательства, и в то время как офицер подходил к ней, из двери выскочил вытолкнутый человек в сером армяке и с бритой головой.
Человек этот, согнувшись, проскочил мимо купцов и офицера. Офицер напустился на солдат, бывших в лавке. Но в это время страшные крики огромной толпы послышались на Москворецком мосту, и офицер выбежал на площадь.
– Что такое? Что такое? – спрашивал он, но товарищ его уже скакал по направлению к крикам, мимо Василия Блаженного. Офицер сел верхом и поехал за ним. Когда он подъехал к мосту, он увидал снятые с передков две пушки, пехоту, идущую по мосту, несколько поваленных телег, несколько испуганных лиц и смеющиеся лица солдат. Подле пушек стояла одна повозка, запряженная парой. За повозкой сзади колес жались четыре борзые собаки в ошейниках. На повозке была гора вещей, и на самом верху, рядом с детским, кверху ножками перевернутым стульчиком сидела баба, пронзительно и отчаянно визжавшая. Товарищи рассказывали офицеру, что крик толпы и визги бабы произошли оттого, что наехавший на эту толпу генерал Ермолов, узнав, что солдаты разбредаются по лавкам, а толпы жителей запружают мост, приказал снять орудия с передков и сделать пример, что он будет стрелять по мосту. Толпа, валя повозки, давя друг друга, отчаянно кричала, теснясь, расчистила мост, и войска двинулись вперед.


В самом городе между тем было пусто. По улицам никого почти не было. Ворота и лавки все были заперты; кое где около кабаков слышались одинокие крики или пьяное пенье. Никто не ездил по улицам, и редко слышались шаги пешеходов. На Поварской было совершенно тихо и пустынно. На огромном дворе дома Ростовых валялись объедки сена, помет съехавшего обоза и не было видно ни одного человека. В оставшемся со всем своим добром доме Ростовых два человека были в большой гостиной. Это были дворник Игнат и казачок Мишка, внук Васильича, оставшийся в Москве с дедом. Мишка, открыв клавикорды, играл на них одним пальцем. Дворник, подбоченившись и радостно улыбаясь, стоял пред большим зеркалом.
– Вот ловко то! А? Дядюшка Игнат! – говорил мальчик, вдруг начиная хлопать обеими руками по клавишам.
– Ишь ты! – отвечал Игнат, дивуясь на то, как все более и более улыбалось его лицо в зеркале.
– Бессовестные! Право, бессовестные! – заговорил сзади их голос тихо вошедшей Мавры Кузминишны. – Эка, толсторожий, зубы то скалит. На это вас взять! Там все не прибрано, Васильич с ног сбился. Дай срок!
Игнат, поправляя поясок, перестав улыбаться и покорно опустив глаза, пошел вон из комнаты.
– Тетенька, я полегоньку, – сказал мальчик.
– Я те дам полегоньку. Постреленок! – крикнула Мавра Кузминишна, замахиваясь на него рукой. – Иди деду самовар ставь.
Мавра Кузминишна, смахнув пыль, закрыла клавикорды и, тяжело вздохнув, вышла из гостиной и заперла входную дверь.
Выйдя на двор, Мавра Кузминишна задумалась о том, куда ей идти теперь: пить ли чай к Васильичу во флигель или в кладовую прибрать то, что еще не было прибрано?
В тихой улице послышались быстрые шаги. Шаги остановились у калитки; щеколда стала стучать под рукой, старавшейся отпереть ее.
Мавра Кузминишна подошла к калитке.
– Кого надо?
– Графа, графа Илью Андреича Ростова.
– Да вы кто?
– Я офицер. Мне бы видеть нужно, – сказал русский приятный и барский голос.
Мавра Кузминишна отперла калитку. И на двор вошел лет восемнадцати круглолицый офицер, типом лица похожий на Ростовых.
– Уехали, батюшка. Вчерашнего числа в вечерни изволили уехать, – ласково сказала Мавра Кузмипишна.
Молодой офицер, стоя в калитке, как бы в нерешительности войти или не войти ему, пощелкал языком.
– Ах, какая досада!.. – проговорил он. – Мне бы вчера… Ах, как жалко!..
Мавра Кузминишна между тем внимательно и сочувственно разглядывала знакомые ей черты ростовской породы в лице молодого человека, и изорванную шинель, и стоптанные сапоги, которые были на нем.
– Вам зачем же графа надо было? – спросила она.
– Да уж… что делать! – с досадой проговорил офицер и взялся за калитку, как бы намереваясь уйти. Он опять остановился в нерешительности.
– Видите ли? – вдруг сказал он. – Я родственник графу, и он всегда очень добр был ко мне. Так вот, видите ли (он с доброй и веселой улыбкой посмотрел на свой плащ и сапоги), и обносился, и денег ничего нет; так я хотел попросить графа…
Мавра Кузминишна не дала договорить ему.
– Вы минуточку бы повременили, батюшка. Одною минуточку, – сказала она. И как только офицер отпустил руку от калитки, Мавра Кузминишна повернулась и быстрым старушечьим шагом пошла на задний двор к своему флигелю.
В то время как Мавра Кузминишна бегала к себе, офицер, опустив голову и глядя на свои прорванные сапоги, слегка улыбаясь, прохаживался по двору. «Как жалко, что я не застал дядюшку. А славная старушка! Куда она побежала? И как бы мне узнать, какими улицами мне ближе догнать полк, который теперь должен подходить к Рогожской?» – думал в это время молодой офицер. Мавра Кузминишна с испуганным и вместе решительным лицом, неся в руках свернутый клетчатый платочек, вышла из за угла. Не доходя несколько шагов, она, развернув платок, вынула из него белую двадцатипятирублевую ассигнацию и поспешно отдала ее офицеру.
– Были бы их сиятельства дома, известно бы, они бы, точно, по родственному, а вот может… теперича… – Мавра Кузминишна заробела и смешалась. Но офицер, не отказываясь и не торопясь, взял бумажку и поблагодарил Мавру Кузминишну. – Как бы граф дома были, – извиняясь, все говорила Мавра Кузминишна. – Христос с вами, батюшка! Спаси вас бог, – говорила Мавра Кузминишна, кланяясь и провожая его. Офицер, как бы смеясь над собою, улыбаясь и покачивая головой, почти рысью побежал по пустым улицам догонять свой полк к Яузскому мосту.
А Мавра Кузминишна еще долго с мокрыми глазами стояла перед затворенной калиткой, задумчиво покачивая головой и чувствуя неожиданный прилив материнской нежности и жалости к неизвестному ей офицерику.


В недостроенном доме на Варварке, внизу которого был питейный дом, слышались пьяные крики и песни. На лавках у столов в небольшой грязной комнате сидело человек десять фабричных. Все они, пьяные, потные, с мутными глазами, напруживаясь и широко разевая рты, пели какую то песню. Они пели врозь, с трудом, с усилием, очевидно, не для того, что им хотелось петь, но для того только, чтобы доказать, что они пьяны и гуляют. Один из них, высокий белокурый малый в чистой синей чуйке, стоял над ними. Лицо его с тонким прямым носом было бы красиво, ежели бы не тонкие, поджатые, беспрестанно двигающиеся губы и мутные и нахмуренные, неподвижные глаза. Он стоял над теми, которые пели, и, видимо воображая себе что то, торжественно и угловато размахивал над их головами засученной по локоть белой рукой, грязные пальцы которой он неестественно старался растопыривать. Рукав его чуйки беспрестанно спускался, и малый старательно левой рукой опять засучивал его, как будто что то было особенно важное в том, чтобы эта белая жилистая махавшая рука была непременно голая. В середине песни в сенях и на крыльце послышались крики драки и удары. Высокий малый махнул рукой.
– Шабаш! – крикнул он повелительно. – Драка, ребята! – И он, не переставая засучивать рукав, вышел на крыльцо.
Фабричные пошли за ним. Фабричные, пившие в кабаке в это утро под предводительством высокого малого, принесли целовальнику кожи с фабрики, и за это им было дано вино. Кузнецы из соседних кузень, услыхав гульбу в кабаке и полагая, что кабак разбит, силой хотели ворваться в него. На крыльце завязалась драка.
Целовальник в дверях дрался с кузнецом, и в то время как выходили фабричные, кузнец оторвался от целовальника и упал лицом на мостовую.
Другой кузнец рвался в дверь, грудью наваливаясь на целовальника.
Малый с засученным рукавом на ходу еще ударил в лицо рвавшегося в дверь кузнеца и дико закричал:
– Ребята! наших бьют!
В это время первый кузнец поднялся с земли и, расцарапывая кровь на разбитом лице, закричал плачущим голосом:
– Караул! Убили!.. Человека убили! Братцы!..
– Ой, батюшки, убили до смерти, убили человека! – завизжала баба, вышедшая из соседних ворот. Толпа народа собралась около окровавленного кузнеца.
– Мало ты народ то грабил, рубахи снимал, – сказал чей то голос, обращаясь к целовальнику, – что ж ты человека убил? Разбойник!
Высокий малый, стоя на крыльце, мутными глазами водил то на целовальника, то на кузнецов, как бы соображая, с кем теперь следует драться.
– Душегуб! – вдруг крикнул он на целовальника. – Вяжи его, ребята!
– Как же, связал одного такого то! – крикнул целовальник, отмахнувшись от набросившихся на него людей, и, сорвав с себя шапку, он бросил ее на землю. Как будто действие это имело какое то таинственно угрожающее значение, фабричные, обступившие целовальника, остановились в нерешительности.
– Порядок то я, брат, знаю очень прекрасно. Я до частного дойду. Ты думаешь, не дойду? Разбойничать то нонче никому не велят! – прокричал целовальник, поднимая шапку.
– И пойдем, ишь ты! И пойдем… ишь ты! – повторяли друг за другом целовальник и высокий малый, и оба вместе двинулись вперед по улице. Окровавленный кузнец шел рядом с ними. Фабричные и посторонний народ с говором и криком шли за ними.
У угла Маросейки, против большого с запертыми ставнями дома, на котором была вывеска сапожного мастера, стояли с унылыми лицами человек двадцать сапожников, худых, истомленных людей в халатах и оборванных чуйках.
– Он народ разочти как следует! – говорил худой мастеровой с жидкой бородйой и нахмуренными бровями. – А что ж, он нашу кровь сосал – да и квит. Он нас водил, водил – всю неделю. А теперь довел до последнего конца, а сам уехал.
Увидав народ и окровавленного человека, говоривший мастеровой замолчал, и все сапожники с поспешным любопытством присоединились к двигавшейся толпе.
– Куда идет народ то?
– Известно куда, к начальству идет.
– Что ж, али взаправду наша не взяла сила?
– А ты думал как! Гляди ко, что народ говорит.
Слышались вопросы и ответы. Целовальник, воспользовавшись увеличением толпы, отстал от народа и вернулся к своему кабаку.
Высокий малый, не замечая исчезновения своего врага целовальника, размахивая оголенной рукой, не переставал говорить, обращая тем на себя общее внимание. На него то преимущественно жался народ, предполагая от него получить разрешение занимавших всех вопросов.
– Он покажи порядок, закон покажи, на то начальство поставлено! Так ли я говорю, православные? – говорил высокий малый, чуть заметно улыбаясь.
– Он думает, и начальства нет? Разве без начальства можно? А то грабить то мало ли их.
– Что пустое говорить! – отзывалось в толпе. – Как же, так и бросят Москву то! Тебе на смех сказали, а ты и поверил. Мало ли войсков наших идет. Так его и пустили! На то начальство. Вон послушай, что народ то бает, – говорили, указывая на высокого малого.
У стены Китай города другая небольшая кучка людей окружала человека в фризовой шинели, держащего в руках бумагу.
– Указ, указ читают! Указ читают! – послышалось в толпе, и народ хлынул к чтецу.
Человек в фризовой шинели читал афишку от 31 го августа. Когда толпа окружила его, он как бы смутился, но на требование высокого малого, протеснившегося до него, он с легким дрожанием в голосе начал читать афишку сначала.
«Я завтра рано еду к светлейшему князю, – читал он (светлеющему! – торжественно, улыбаясь ртом и хмуря брови, повторил высокий малый), – чтобы с ним переговорить, действовать и помогать войскам истреблять злодеев; станем и мы из них дух… – продолжал чтец и остановился („Видал?“ – победоносно прокричал малый. – Он тебе всю дистанцию развяжет…»)… – искоренять и этих гостей к черту отправлять; я приеду назад к обеду, и примемся за дело, сделаем, доделаем и злодеев отделаем».
Последние слова были прочтены чтецом в совершенном молчании. Высокий малый грустно опустил голову. Очевидно было, что никто не понял этих последних слов. В особенности слова: «я приеду завтра к обеду», видимо, даже огорчили и чтеца и слушателей. Понимание народа было настроено на высокий лад, а это было слишком просто и ненужно понятно; это было то самое, что каждый из них мог бы сказать и что поэтому не мог говорить указ, исходящий от высшей власти.
Все стояли в унылом молчании. Высокий малый водил губами и пошатывался.
– У него спросить бы!.. Это сам и есть?.. Как же, успросил!.. А то что ж… Он укажет… – вдруг послышалось в задних рядах толпы, и общее внимание обратилось на выезжавшие на площадь дрожки полицеймейстера, сопутствуемого двумя конными драгунами.
Полицеймейстер, ездивший в это утро по приказанию графа сжигать барки и, по случаю этого поручения, выручивший большую сумму денег, находившуюся у него в эту минуту в кармане, увидав двинувшуюся к нему толпу людей, приказал кучеру остановиться.
– Что за народ? – крикнул он на людей, разрозненно и робко приближавшихся к дрожкам. – Что за народ? Я вас спрашиваю? – повторил полицеймейстер, не получавший ответа.
– Они, ваше благородие, – сказал приказный во фризовой шинели, – они, ваше высокородие, по объявлению сиятельнейшего графа, не щадя живота, желали послужить, а не то чтобы бунт какой, как сказано от сиятельнейшего графа…
– Граф не уехал, он здесь, и об вас распоряжение будет, – сказал полицеймейстер. – Пошел! – сказал он кучеру. Толпа остановилась, скучиваясь около тех, которые слышали то, что сказало начальство, и глядя на отъезжающие дрожки.
Полицеймейстер в это время испуганно оглянулся, что то сказал кучеру, и лошади его поехали быстрее.
– Обман, ребята! Веди к самому! – крикнул голос высокого малого. – Не пущай, ребята! Пущай отчет подаст! Держи! – закричали голоса, и народ бегом бросился за дрожками.
Толпа за полицеймейстером с шумным говором направилась на Лубянку.
– Что ж, господа да купцы повыехали, а мы за то и пропадаем? Что ж, мы собаки, что ль! – слышалось чаще в толпе.


Вечером 1 го сентября, после своего свидания с Кутузовым, граф Растопчин, огорченный и оскорбленный тем, что его не пригласили на военный совет, что Кутузов не обращал никакого внимания на его предложение принять участие в защите столицы, и удивленный новым открывшимся ему в лагере взглядом, при котором вопрос о спокойствии столицы и о патриотическом ее настроении оказывался не только второстепенным, но совершенно ненужным и ничтожным, – огорченный, оскорбленный и удивленный всем этим, граф Растопчин вернулся в Москву. Поужинав, граф, не раздеваясь, прилег на канапе и в первом часу был разбужен курьером, который привез ему письмо от Кутузова. В письме говорилось, что так как войска отступают на Рязанскую дорогу за Москву, то не угодно ли графу выслать полицейских чиновников, для проведения войск через город. Известие это не было новостью для Растопчина. Не только со вчерашнего свиданья с Кутузовым на Поклонной горе, но и с самого Бородинского сражения, когда все приезжавшие в Москву генералы в один голос говорили, что нельзя дать еще сражения, и когда с разрешения графа каждую ночь уже вывозили казенное имущество и жители до половины повыехали, – граф Растопчин знал, что Москва будет оставлена; но тем не менее известие это, сообщенное в форме простой записки с приказанием от Кутузова и полученное ночью, во время первого сна, удивило и раздражило графа.
Впоследствии, объясняя свою деятельность за это время, граф Растопчин в своих записках несколько раз писал, что у него тогда было две важные цели: De maintenir la tranquillite a Moscou et d'en faire partir les habitants. [Сохранить спокойствие в Москве и выпроводить из нее жителей.] Если допустить эту двоякую цель, всякое действие Растопчина оказывается безукоризненным. Для чего не вывезена московская святыня, оружие, патроны, порох, запасы хлеба, для чего тысячи жителей обмануты тем, что Москву не сдадут, и разорены? – Для того, чтобы соблюсти спокойствие в столице, отвечает объяснение графа Растопчина. Для чего вывозились кипы ненужных бумаг из присутственных мест и шар Леппиха и другие предметы? – Для того, чтобы оставить город пустым, отвечает объяснение графа Растопчина. Стоит только допустить, что что нибудь угрожало народному спокойствию, и всякое действие становится оправданным.
Все ужасы террора основывались только на заботе о народном спокойствии.
На чем же основывался страх графа Растопчина о народном спокойствии в Москве в 1812 году? Какая причина была предполагать в городе склонность к возмущению? Жители уезжали, войска, отступая, наполняли Москву. Почему должен был вследствие этого бунтовать народ?
Не только в Москве, но во всей России при вступлении неприятеля не произошло ничего похожего на возмущение. 1 го, 2 го сентября более десяти тысяч людей оставалось в Москве, и, кроме толпы, собравшейся на дворе главнокомандующего и привлеченной им самим, – ничего не было. Очевидно, что еще менее надо было ожидать волнения в народе, ежели бы после Бородинского сражения, когда оставление Москвы стало очевидно, или, по крайней мере, вероятно, – ежели бы тогда вместо того, чтобы волновать народ раздачей оружия и афишами, Растопчин принял меры к вывозу всей святыни, пороху, зарядов и денег и прямо объявил бы народу, что город оставляется.
Растопчин, пылкий, сангвинический человек, всегда вращавшийся в высших кругах администрации, хотя в с патриотическим чувством, не имел ни малейшего понятия о том народе, которым он думал управлять. С самого начала вступления неприятеля в Смоленск Растопчин в воображении своем составил для себя роль руководителя народного чувства – сердца России. Ему не только казалось (как это кажется каждому администратору), что он управлял внешними действиями жителей Москвы, но ему казалось, что он руководил их настроением посредством своих воззваний и афиш, писанных тем ёрническим языком, который в своей среде презирает народ и которого он не понимает, когда слышит его сверху. Красивая роль руководителя народного чувства так понравилась Растопчину, он так сжился с нею, что необходимость выйти из этой роли, необходимость оставления Москвы без всякого героического эффекта застала его врасплох, и он вдруг потерял из под ног почву, на которой стоял, в решительно не знал, что ему делать. Он хотя и знал, но не верил всею душою до последней минуты в оставление Москвы и ничего не делал с этой целью. Жители выезжали против его желания. Ежели вывозили присутственные места, то только по требованию чиновников, с которыми неохотно соглашался граф. Сам же он был занят только тою ролью, которую он для себя сделал. Как это часто бывает с людьми, одаренными пылким воображением, он знал уже давно, что Москву оставят, но знал только по рассуждению, но всей душой не верил в это, не перенесся воображением в это новое положение.