Михаил Галушко - Разработка winrt приложений для windows 8:...
Post on 15-May-2015
807 Views
Preview:
TRANSCRIPT
РАЗРАБОТКА WINRT ПРИЛОЖЕНИЙ
ДЛЯ WINDOWS 8: РЕАЛЬНЫЙ ОПЫТ
Михаил Галушко
DevRain Solutions
Что такое Windows 8
Desktop apps
WinRT apps
Windows Store
Разработка для Windows 8
WPF
Silverlight
Windows Phone
Web Dev (html/css + js)
C++
Windows 8
WinRT
Поддержка x86, ARM
Доступен DirectX
Объектно-ориентирован
Взял многое из .NET
Асинхронный
WinRT
WinRT – модель работы приложения
Running
Not Running Suspended
Activated Suspending
Resuming
Terminating
«Умная» многозадачность
Приложение работает пока его видит
пользователь.
Пользователь не должен замечать, что
приложение не работало.
Возможна работа в фоне в ограниченных
случаях.
WinRT - изолированность
Application 1
OS Core
Application 2
Contracts
API API
WinRT - контракты
Search
Share source/target
Settings
File picker
Printing
…
WinRT – работа в фоне
Not Running Suspended
Application
System
Infrastructure
Triggers
Event
Register
Register
Run method
WinRT – работа в фоне
Application BackgroundTask, BackgroundDownloader
Интеграция с LockScreen: IM, E-mail
WinRT – хранение данных
Application
LocalFolder RoamingFolder TemporaryFolder
WinRT – хранение данных
Application Настройки (key-value)
Папки и файлы
Сторонние решения: SQLite
Windows Store
Application Около 7к приложений
ОЧЕНЬ быстрая сертификация, пока
Поддержка Trial-режима
In-App purchase
RadControls for Windows 8 (Telerik)
Application Лучшая библиотека для Win8 / WP7 / WP8
15+ XAML/HTML компонент
$99
http://www.telerik.com/products/windows-
8/overview.aspx
Essential Studio for WinRT (Syncfusion)
Application Стандартный набор компонент +
контролы для работы с Word, Excel, PDF
$99
http://www.syncfusion.com/products/winrt
Metro Elements (Mindscape)
Application 17 видов Chart, DatePicker, TimePicker
Скоро будет +20 компонент
$99
http://www.mindscapehq.com/products/metroele
ments
Syncfusion Metro Studio
Application 1700+ metro-иконок (PNG/XAML)
Бесплатно
http://www.syncfusion.com/downloads/metrostud
io
OpenSource
Application WinRT XAML Toolkit
http://winrtxamltoolkit.codeplex.com/
Callisto
https://github.com/timheuer/callisto
+множество портированных библиотек
Best practices
Application 1. Читайте гайды Microsoft
2. Учитывайте все размеры и ориентации
экранов при разработке дизайна
Best practices
Application 3. Контент располагается горизонтально
4. Нижняя панель приложения: контекстные
действия, верхний – навигация (не
обязательно)
Best practices
Application 5. Хорошая практика: меню заголовка
6. Навигация выполняется с помощью:
погружение через контент, меню заголовка +
кнопка назад, панель навигации
Best practices
Application 7.Не смешивайте контент и действия
8.Используйте контракты: Search, Share,
Settings, FilePicker,…
9. Не дублируйте системные функции: Search
,Share, Settings, ...
Best practices
Application 10. Сохранение изменений выполняется без
подтверждения пользователя (нет кнопки
«Сохранить»)
11. Используйте SemanticZoom для экранов с
большим количеством контента и
группировкой – это удобный способ
навигации
Best practices
Application 12. Главный тайл должен привлекать юзера,
выделяться в списке других
13. Тайлы должны быть живыми – призывать
юзера зайти в приложение
14. Подумайте про Lock-screen: IM, E-mail
Best practices
Application 15. Поддержка SnappedView – особенно для
чатов, новостей, таск менеджеров
16. Обрабатывайте состояния
Suspended/Resumed – пользователь не
должен догадываться, что приложение не
работало
Best practices
Application 17. Время старта приложения менее 5 сек,
уход в Suspended менее 2 сек
18. Обязательно Terms of use/Privacy policy и
About в панели настроек
19. Async/await – не забываем про
асинхронность
Вопросы и ответы
Спасибо за внимание!
top related