Upload
osmond
View
100
Download
3
Embed Size (px)
DESCRIPTION
XAML – единая технология: настоящее и будущее. Silverlight, WPF, WF, WCF; Windows 7, Windows Phone 7 и Windows Embedded. Стас Павлов Эксперт по технологиям разработки ПО Microsoft. Содержание. Настоящее Модель данных Документы Сценарии Использование XAML в технологиях Microsoft - PowerPoint PPT Presentation
Citation preview
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
Object Member Value
Поток узлов XAML
StartObject
Value
StartMember
StartObject StartMember
ValueStartMember
ValueStartObject StartMember
Background
ChildrenCanvas
Button
Button
Content
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)
XamlXmlReaderObjectWriter
System.Xaml.dll - единое API для XAML/DOM/Объектов/…
XamlServices – класс реализующий стандартный функционал чтения/записи XAML
Документы XAML
Текстовый - .xaml<Canvas> <Button Background="Green"> Ok </Button> <Button Content="Cancel"> <Button.Background> Red </Button.Background> </Button></Canvas>
Canvas
ButtonButton
Граф объектов
Бинарный компактный - .bamlStartObject StartMember
StartMember TeST
TeSTStartObject StartMember
ST=Canvas
ST=Button
SM=Children
SM=Background
SM=Content
“Green”
“Ok”
TeST
TeST “Red”
“Cancel
”
StartMember
StartObject StartMemberST=Button
SM=Background
SM=Content
DOM дерево
TNTN“Green”
“Ok”
TNTN “Red”
“Cancel”
ON
PN
PN PN
ST=Canvas
SM=Children
PN PNSM=Backgr
oundSM=Content
SM=Background
SM=Content
ONST=Button
ONST=Button
Сценариичтения/записи
XamlXmlWriter
XamlXmlReader ObjectWriter
ObjectReader
BamlReader
X
D
B
O
DomReader
DomW
riterЗагрузка Xaml @ 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
Серверные технологии
Workflow Foundation
Communication Foundation
Развитие XAML в .NET
WCF
WF
WPF
.NET 3.0 .NET 3.5 .NET 4.0
Богатый XAML словарь
Богатый XAML словарь
Богатый XAML словарь
Богатый XAML словарь
Богатый XAML словарь
Маленький XAML словарь
Маленький XAML словарь
Нет XAML словаря
Маленький XAML словарь
Развитие архитектуры в .NET
WF, WCF,
…
PresentationCore.dll (PC.dll)
PresentationFramework.dll (PF.dll)
XAML engine
3.x
WindowsBase.dll
XamlTypeInfo
Mscorlib, System, System.Xml
BAMLengine
PC.dll
PF.dll
WindowsBase.dll
BAML engine
4
System.Xaml.dll
XamlTypeInfo
XAML engine
Mscorlib, System, System.Xml
WPFWorkflo
w
XOML engin
e
Xoml
TypeInfo
Демонстрация
Единый 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 на встраиваемой платформе MicrosoftWindows Embedded Standard 7 иWindows Embedded Compact 7
Декларируйте ваши замыслыЧто необходимо, без указания как сделать
XAML может использоваться для создания декларативных моделей
Frameworks могут поддерживать XAML
ПриложениеМодель
Silverlight
Framework
WPF
WFWCF
Будущее XAML Не просто язык разметки Может быть использован для любого объектно
ориентированного Framework Интегрирован с .NET Используется на всех платформах Microsoft Используется практически во всех технологиях
клиентской и серверной разработки Microsoft Используется при разработке для встраиваемых
платформ Microsfot
Ресурсы http://techdays.ru – видео доклады по всем
технологиям http://msdn.microsoft.com/ru-ru/silverlight/ http://msdn.microsoft.com/ru-ru/windowsphone/ http://
msdn.microsoft.com/en-us/library/ms747122.aspx – XAML in WPF
http://msdn.microsoft.com/en-us/library/dd361847(v=PROT.10).aspx – Microsoft Domain-Specific Languages
http://www.silverlight.net/ – официальный сайт Silverlight
Обратная связь Ваше мнение очень важно для нас. Пожалуйста, оцените доклад, заполните анкету и сдайте ее при выходе из зала
Спасибо!
Вопросы PL704 Стас Павлов
Эксперт по технологиям разработки ПО [email protected] http://twitter.com/stasus
Вы сможете задать вопросы докладчику в зоне «Спроси эксперта» в течение часа после завершения этого доклада