Silverlight 2
Константин Кичинский
  kichinsky@mainfo.ru
Agenda
•   Обзор
•   Сравнение
•   Демонстрация
•   Deep Zoom
RIA – Rich Internet Application
RIA – Rich Internet Application
RIA – Rich Interactive Application, MS
RIA – Rich Interactive Application, MS
.NET
.NET
is NOT portable
.NET
is NOT portable
(MONO не в счет)
.NET
is NOT portable
(MONO не в счет)   ≈200 Мб
Microsoft Portable Solution
Crossplatform .NET

≈4 Мб
Silverlight 1.0
•   2D, Graphics
•   Audio, Video
•   Animations
•   Text
Silverlight 2.0 Runtime
•   2D, Graphics       •   Networking
•   Audio, Video       •   .NET Support
•   Animations         •   LINQ
•   Text, Text Input   •   XMLAPIs
•   Controls           •   Generics
•   Layouts            •   HTML Integration
•   Styles/Templates   •   Local Storage
•   Data Binding       •   Crypto APIs
Silverlight 2 SDK Libraries
• Dynamic Languages
    – JScript
    – IronRuby
    – IronPython
•   Additional Controls
•   LINQ for XML
•   XML Serialization
•   Syndication APIs (RSS)
Сравнение SL 1 и SL 2
Возможности                                       SL 1.0   SL 2.0
2D Graphics, Animations
                                                    +        +
AJAX Support
                                                    +        +
Cross-Browser (Firefox, IE, Safari)
                                                    +        +
Cross-Platform (Windows, Mac)
                                                    +        +
Framework Languages
(Visual Basic, Visual C#, IronRuby, Ironpython)
                                                             +
HTML DOM Integration
                                                    +        +
HTTP Networking
                                                    +        +
Isolated Storage
                                                             +
Сравнение SL 1 и SL 2
Возможности                                              SL 1.0   SL 2.0
JavaScript Support
                                                           +        +
JSON, REST, SOAP/WS-*, POX, and RSS Web Services
(включая Sockets)
                                                                    +
Cross Domain Network Access
                                                                    +
LINQ to Objects
                                                                    +
Canvas Layout Support
                                                           +        +
StackPanel, Grid and Panel Layout Support
                                                                    +
Полный набор Control`ов (TextBox, RadioButton, Slider,
Calendar, DatePicker, DataGrid, ListBox, и т. д.)
                                                                    +
Deep Zoom Technology
                                                                    +
Сравнение SL 1 и SL 2
Возможности                                         SL 1.0   SL 2.0
Managed HTML Bridge
                                                               +
Managed Exception Handling
                                                               +
Media – Content Protection
                                                               +
LINQ to Objects
                                                               +
Media – 720P High Definition (HD) Video
                                                      +        +
Media – Audio/Video Support (VC-1, WMV, WMA, MP3)
                                                      +        +
Media – Image Support (JPG, PNG)
                                                      +        +
Media Markers
                                                      +        +
Сравнение SL 1 и SL 2
Возможности                                          SL 1.0   SL 2.0
Rich Core Framework (Generics, collections)
                                                                +
Security Enforcement
                                                                +
Silverlight ASP.NET Controls (asp:media, asp:xaml)
                                                       +        +
Type Safety Verification
                                                                +
Windows Meda Server Support
                                                       +        +
XAML Parser (based on WPF)
                                                       +        +
XMLReader/Writer
                                                                +
Silverlight 1
Silverlight 2
Silverlight Roadmap
• Silverlight 1 – Сентябрь `07
• Silverlight 2
  – 5 Марта      Beta 1 (некоммерческая)
  – Q208: Beta 2


• Инструменты
  – Обновления Expression Studio и Visual Studio
  – Поддержка в Visual Studio Designer – позже, но
    в этом году 
Silverlight Sandbox
• Silverlight живет в песочнице
• Разработчики не могут расширять песочницу
• Дополнительные «безопасные возможности»
  – Local storage (isolated storage)
     • Похоже на cookies
  – FileOpen dialog
  – Sockets
     • Beta 1: Site of origin, ограничения на порты
  – Cross domain HTTP(S) запросы
     • Поддерживает Silverlight и подмножество Flash policy
       файлы
Beta 1 Controls
•     Canvas                  •   CheckBox*
•     FileOpenDialog          •   DataGrid*
•     Grid                    •   DateTimePicker*
•     Image                   •   GridSplitter*
•     ItemsControl            •   Hyperlink*
•     MediaElement            •   ListBox*
•     MultiScaleImage         •   Calendar*
•     StackPanel              •   RadioButton*
•     TextBox                 •   Slider*
•     TextBlock               •   ToggleButton*
•     Button                  •   Tooltip*
•     Popup                   •   WatermarkTextBox*
    * Поставляются отдельно
Layout
• Контейнеры
  – Canvas, Grid, StackPanel, Border
• Свойства
  – Width, MinWidth, MaxWidth, ActualWidth
  – Height, MinHeight, MaxHeight, ActualHeight
  – Margin and Padding
• Расширяемы
Data Binding
• Property Binding
   – One way, two way и one time
   – Поддержка преобразования значений
• Collection/List Binding
   – Поддерживаются шаблоны данных
     (repeaters)
Local Storage
• Cookies on steroids
• Доступно до 10MB на каждое приложение
• Используется .NET IsolatedStorage APIs
Open File Dialog
• Позволяет пользователю выбрать файл
• Приложение получает доступ к потоку
• Поддерживается множественный выбор и
  фильтры
• Позволяет:
  – Загрузку файлов(w/ HttpWebRequest)
  – Просмотр локальных изображений
    (w/ Image element)
  – Просмотр локальных медиа-файлов
    (w/ MediaElement)
Deep Zoom!
• Простой способ просмотра и
  масштабирования больших изображений
• Подгружает только необходимые данные
Deep Zoom!
• Предварительная обработка изображения
  – Разбиение на куски 256х256
• Построение пирамиды изображений
Deep Zoom
Ссылки
• Silverlight
   – http://silverlight.net
   – http://microsoft.com/Silverlight
• Expression Studio
   – http://www.microsoft.com/expression/
• DeepZoom
   – http://blogs.msdn.com/expression/archive/2008/03/05/download-
     the-preview-of-the-deep-zoom-composer.aspx
   – http://blogs.msdn.com/expression/archive/2008/03/05/deep-zoom-
     composer-user-guide.aspx

Silverlight 2

  • 1.
  • 2.
    Agenda • Обзор • Сравнение • Демонстрация • Deep Zoom
  • 4.
    RIA – RichInternet Application
  • 5.
    RIA – RichInternet Application
  • 6.
    RIA – RichInteractive Application, MS
  • 7.
    RIA – RichInteractive Application, MS
  • 8.
  • 9.
  • 10.
    .NET is NOT portable (MONOне в счет)
  • 11.
    .NET is NOT portable (MONOне в счет) ≈200 Мб
  • 12.
  • 13.
  • 14.
    Silverlight 1.0 • 2D, Graphics • Audio, Video • Animations • Text
  • 15.
    Silverlight 2.0 Runtime • 2D, Graphics • Networking • Audio, Video • .NET Support • Animations • LINQ • Text, Text Input • XMLAPIs • Controls • Generics • Layouts • HTML Integration • Styles/Templates • Local Storage • Data Binding • Crypto APIs
  • 16.
    Silverlight 2 SDKLibraries • Dynamic Languages – JScript – IronRuby – IronPython • Additional Controls • LINQ for XML • XML Serialization • Syndication APIs (RSS)
  • 17.
    Сравнение SL 1и SL 2 Возможности SL 1.0 SL 2.0 2D Graphics, Animations + + AJAX Support + + Cross-Browser (Firefox, IE, Safari) + + Cross-Platform (Windows, Mac) + + Framework Languages (Visual Basic, Visual C#, IronRuby, Ironpython) + HTML DOM Integration + + HTTP Networking + + Isolated Storage +
  • 18.
    Сравнение SL 1и SL 2 Возможности SL 1.0 SL 2.0 JavaScript Support + + JSON, REST, SOAP/WS-*, POX, and RSS Web Services (включая Sockets) + Cross Domain Network Access + LINQ to Objects + Canvas Layout Support + + StackPanel, Grid and Panel Layout Support + Полный набор Control`ов (TextBox, RadioButton, Slider, Calendar, DatePicker, DataGrid, ListBox, и т. д.) + Deep Zoom Technology +
  • 19.
    Сравнение SL 1и SL 2 Возможности SL 1.0 SL 2.0 Managed HTML Bridge + Managed Exception Handling + Media – Content Protection + LINQ to Objects + Media – 720P High Definition (HD) Video + + Media – Audio/Video Support (VC-1, WMV, WMA, MP3) + + Media – Image Support (JPG, PNG) + + Media Markers + +
  • 20.
    Сравнение SL 1и SL 2 Возможности SL 1.0 SL 2.0 Rich Core Framework (Generics, collections) + Security Enforcement + Silverlight ASP.NET Controls (asp:media, asp:xaml) + + Type Safety Verification + Windows Meda Server Support + + XAML Parser (based on WPF) + + XMLReader/Writer +
  • 21.
  • 22.
  • 23.
    Silverlight Roadmap • Silverlight1 – Сентябрь `07 • Silverlight 2 – 5 Марта Beta 1 (некоммерческая) – Q208: Beta 2 • Инструменты – Обновления Expression Studio и Visual Studio – Поддержка в Visual Studio Designer – позже, но в этом году 
  • 24.
    Silverlight Sandbox • Silverlightживет в песочнице • Разработчики не могут расширять песочницу • Дополнительные «безопасные возможности» – Local storage (isolated storage) • Похоже на cookies – FileOpen dialog – Sockets • Beta 1: Site of origin, ограничения на порты – Cross domain HTTP(S) запросы • Поддерживает Silverlight и подмножество Flash policy файлы
  • 25.
    Beta 1 Controls • Canvas • CheckBox* • FileOpenDialog • DataGrid* • Grid • DateTimePicker* • Image • GridSplitter* • ItemsControl • Hyperlink* • MediaElement • ListBox* • MultiScaleImage • Calendar* • StackPanel • RadioButton* • TextBox • Slider* • TextBlock • ToggleButton* • Button • Tooltip* • Popup • WatermarkTextBox* * Поставляются отдельно
  • 26.
    Layout • Контейнеры – Canvas, Grid, StackPanel, Border • Свойства – Width, MinWidth, MaxWidth, ActualWidth – Height, MinHeight, MaxHeight, ActualHeight – Margin and Padding • Расширяемы
  • 27.
    Data Binding • PropertyBinding – One way, two way и one time – Поддержка преобразования значений • Collection/List Binding – Поддерживаются шаблоны данных (repeaters)
  • 28.
    Local Storage • Cookieson steroids • Доступно до 10MB на каждое приложение • Используется .NET IsolatedStorage APIs
  • 29.
    Open File Dialog •Позволяет пользователю выбрать файл • Приложение получает доступ к потоку • Поддерживается множественный выбор и фильтры • Позволяет: – Загрузку файлов(w/ HttpWebRequest) – Просмотр локальных изображений (w/ Image element) – Просмотр локальных медиа-файлов (w/ MediaElement)
  • 30.
    Deep Zoom! • Простойспособ просмотра и масштабирования больших изображений • Подгружает только необходимые данные
  • 31.
    Deep Zoom! • Предварительнаяобработка изображения – Разбиение на куски 256х256 • Построение пирамиды изображений
  • 32.
  • 33.
    Ссылки • Silverlight – http://silverlight.net – http://microsoft.com/Silverlight • Expression Studio – http://www.microsoft.com/expression/ • DeepZoom – http://blogs.msdn.com/expression/archive/2008/03/05/download- the-preview-of-the-deep-zoom-composer.aspx – http://blogs.msdn.com/expression/archive/2008/03/05/deep-zoom- composer-user-guide.aspx