Программирование для Silverlight с помощью CoreCLR

ОГЛАВЛЕНИЕ

В Silverlight 2 сделан ряд изменений в инфраструктуре интерфейса пользователя Windows Presentation Foundation (WPF): новые элементы управления, сетевые интерфейсы API со множеством возможностей и поддержка управления цифровыми правами (Digital Rights Management – DRM). Одним крупным изменением в Silverlight 2 является способность использовать языки, совместимые с Microsoft .NET, для программирования веб-клиента. Здесь я сосредоточусь на базе для разработки Silverlight: CoreCLR.

За прошедший десяток (или около того) лет возникло много различных технологий веб-программирования от CSS до вариантов ECMAScript. Большинство из них относятся только к веб-программированию – навыки, приобретенные при программировании CSS, неприменимы в других областях. В противоположность им, Silverlight 2 позволяет применять напрямую к приложениям веб-клиента навыки для .NET Framework, используемые при программировании для настольных систем, например библиотеки базовых классов, XAML и C#. Вдобавок, это позволяет избавиться от необходимости создавать отдельную среду разработки CoreCLR: можно просто использовать Visual Studio для проектирования, разработки, отладки и профилирования кода на C# или Visual Basic, точно так же, как в случае с настольным приложением. Мы создали CoreCLR в Silverlight 2 именно для того, чтобы сделать веб-программирование столь же богатым возможностями, как и настольное программирование.

Хотя для разработчиков удобно иметь среду программирования с богатыми возможностями, пользователи не желают загружать большие надстройки для обозревателя. Чтобы Silverlight пользовался успехом у пользователей, мы должны были сделать установку быстрой. Нам удалось сократить бета-версию 1 до 4,3 МБ – примерно 6-10 секунд установки по широкополосному подключению. Это выдающееся достижение, если учесть, что каждая из двух крупных частей CLR .NET Framework 2.0 (mscorwks.dll и mscorlib.dll) не уступает по размерам coreclr.dll и mscorlib.dll от Silverlight 2 вместе взятым.