XAML – единая технология: настоящее и будущее Silverlight, WPF, WF, WCF; Windows 7, Windows Phone 7 и Windows Embedded Стас Павлов Эксперт по технологиям разработки ПО Microsoft
Содержание Настоящее Модель данных Документы Сценарии Использование XAML в технологиях Microsoft Windows Presentation Foundation Silverlight Workflow Foundation и Windows Communication Foundation XAML на платформах Microsoft Windows 7 Winnows Phone 7 Windows Embedded Standard и Compact Будущее
Настоящее XAML Словари XAML Интерфейсы: Взаимодействие разработчика и дизайнера Процессы и сервисы: Декларативная определение процессов Документы: XML Paper Specification (XPS) Среды исполнения.NET 4.0, Silverlight 4 & 5, Silverlight for Windows Phone, Silverlight for Windows Embedded Инструментарий Visual Studio 2010, Expression Blend Опубликованы спецификации [MS-XAML], [MS-WPFXV], [MS-SLXV], [MS-XAML-2009], [MS-SLXV- 2010], [MS-WPFXV-2010] и XPS
Модель данных O-M-V Корневой объект Объекты содержат члены Члены содержат объекты и/или значения Некоторые объекты – коллекции Коллекции хранят свои элементы Типы Объекты - экземпляры XamlTypes Члены - экземпляры XamlMembers ObjectMember Value
Поток узлов XAML StartObject Value StartMember StartObjectStartMember Value StartMember Value StartObject StartMember Background Children Canvas Button Content Green OK Cancel
Пример: XAML в объекты XML узлы Граф объектов XML узлы в XAML узлы XAML узлы в объекты Разрешение типов object XamlReader.Load(XmlReader)
Демонстрация Преобразование XAML в граф объектов XamlXmleader/XamlObjectWriter
Пример: XAML в объекты XML узлы Граф объектов XML узлы в XAML узлы XAML узлы в объекты Разрешение типов object XamlReader.Load(XmlReader) XamlXmlReader Object Writer System.Xaml.dll - единое API для XAML/DOM/Объектов/… XamlServices – класс реализующий стандартный функционал чтения/записи XAML
Документы XAML Текстовый -.xaml Ok Red Текстовый -.xaml Ok Red Canvas Button Граф объектов Бинарный компактный -.baml StartObject StartMember TeST StartObjectStartMember ST=Ca nvas ST=Bu tton SM=Chil dren SM=Backgrou nd SM=Con tent Gr een O k TeST R e d Ca ncel StartMember StartObjectStartMember ST=Bu tton SM=Backgrou nd SM=Con tent DOM дерево TN Gre en O k TN R e d Canc el ON PN ST=Can vas SM=Chil dren PN SM=Backgro und SM=Con tent SM=Backgro und SM=Con tent ON ST=But ton ON ST=But ton
Сценарии чтения/записи XamlXmlWriter XamlXmlReader ObjectWriter ObjectReader BamlReader X X D D B B O O DomReader DomWriter Загрузка Runtime (X в O) Загрузка бин. Runtime (B в 0) Дизайнер – загрузка в DOM & объекты Сохранение Xaml (O в X) Основные сценарии
Расширения XAML Конвертеры типов Расширения разметки Сериализаторы значений/объектов Собственные расширения с расширением системы типов XAML
Использование Простой формат файлов для технологий на базе объектов Разрабатывая технологии на базе XAML: XAML чтение/запись Разметка == Модель объектов Тесная интеграция с.NET XML понятный для человека Просто создать инструментарий Событийно-ориентированная программная модель Встроенная возможность расширения, включая свои типы XAML в технологиях Microsoft WPF, Silverlight, WF, WCF, Silverlight for Windows Phone, Silverlight for Windows Embedded
XAML в технологиях Microsoft
Клиентские технологии Windows Presentation Foundation Silverlight for Windows Phone Silverlight
Серверные технологии Workflow Foundation Communication Foundation
Развитие XAML в.NET WCF WF WPF.NET 3.0.NET 3.5.NET 4.0 Богатый XAML словарь Маленький XAML словарь Нет XAML словаря Маленький XAML словарь
Развитие архитектуры в.NET WF, WCF, … WF, WCF, … PresentationCore.dll (PC.dll) Presentation Framework.dll (PF.dll) XAML engine 3.x WindowsBase.dll XamlTypeInfo Mscorlib, System, System.Xml BAML engine PC.dll PF.dll Windows Base.dll BAML engine 4 System.Xaml.dll XamlTypeInfo XAML engine Mscorlib, System, System.Xml WPF Workflow XOML engine Xoml Type Info
Демонстрация Единый XAML - разные технологии и платформы WPF, Silverlight, Silverlight for Windows Phone
XAML на платформах Microsoft
Клиентская платформа
WPF и Silverlight Windows 7 Windows Vista Silverlight for Windows Phone Windows Phone
Встраиваемая платформы WPF и Silverlight Windows Embedded Standard 7 Windows Embedded POSReady 7 (CTP) Windows Embedded Standard 2009 Windows Embedded POSReady 2009 Silverlight Windows Embedded Compact 7 (Silverlight 3.0 и C++ код) WCF и WF Семейство Windows Embedded Servers
Встраиваемые технологии Silverlight for Windows Embedded Windows Presentation Foundation Silverlight
Демонстрация Silverlight на встраиваемой платформе Microsoft Windows Embedded Standard 7 и Windows Embedded Compact 7
Декларируйте ваши замыслы Что необходимо, без указания как сделать XAML может использоваться для создания декларативных моделей Frameworks могут поддерживать XAML Silver light WPF WF WC F
Будущее XAML Не просто язык разметки Может быть использован для любого объектно ориентированного Framework Интегрирован с.NET Используется на всех платформах Microsoft Используется практически во всех технологиях клиентской и серверной разработки Microsoft Используется при разработке для встраиваемых платформ Microsfot
Ресурсы – видео доклады по всем технологиям – XAML in WPF us/library/dd361847(v=PROT.10).aspx – Microsoft Domain- Specific Languages us/library/dd361847(v=PROT.10).aspx – официальный сайт Silverlight
Обратная связь Ваше мнение очень важно для нас. Пожалуйста, оцените доклад, заполните анкету и сдайте ее при выходе из зала Спасибо!
Вопросы PL704 Стас Павлов Эксперт по технологиям разработки ПО Вы сможете задать вопросы докладчику в зоне «Спроси эксперта» в течение часа после завершения этого доклада