SlideShare uma empresa Scribd logo
1 de 27
Экосистема Windows 8 и практика
разработки приложений
Михаил Галушко
DevRain Solutions
Что такое Windows 8
Что такое Windows 8
 Desktop apps
 WinRT apps
 Интеграция с сервисами
 Windows Store
Особенности Metro приложений


            ДЕМО
«Умная» многозадачность
 Приложение работает пока его видит
 пользователь.
 Пользователь не должен замечать, что
 приложение не работало.
 Возможна работа в фоне в ограниченных
 случаях.
Разработка для Windows 8

WPF
Silverlight
Windows Phone
Web Dev (html/css + js)
Windows 8
WinRT
WinRT
Поддержка x86, ARM
Доступен DirectX
Основан на COM
Взял многое из .NET
Объектно-ориентирован
Асинхронный
WinRT – модель работы приложения
    Activated                      Suspending
                   Running




   Not Running          Resuming   Suspended



                 Terminating
WinRT - изолированность

  Application 1               Application 2
                  Contracts


            API                          API




                  OS Core
WinRT - контракты
Search
Share source/target
Settings
File picker
Printing
…
WinRT – работа в фоне
         Run method                  System
                                 Infrastructure

                   Register

                                           Event
Application

     Not Running                    Suspended
                      Register
                                    Triggers
WinRT – работа в фоне
 BackgroundTask, Application
                 BackgroundDownloader

 Интеграция с LockScreen: IM, E-mail
WinRT – хранение данных

                Application




  LocalFolder   RoamingFolder   TemporaryFolder
WinRT – хранение данных
 Настройки (key-value)
                Application
 Папки и файлы
 Сторонние решения: SQLite
Best practices
 1. Читайте гайды Microsoft 
                Application


 2. Учитывайте все размеры и ориентации
    экранов при разработке дизайна
Best practices
 3. Контент располагается горизонтально
                 Application


 4. Нижняя панель приложения: контекстные
 действия, верхний – навигация (не
 обязательно)
Best practices
 5. Хорошая практика: меню заголовка
                Application


 6. Навигация выполняется с помощью:
 погружение через контент, меню заголовка +
 кнопка назад, панель навигации сверху
Best practices
 7. Не смешивайте контент и действия
                   Application
 8. Не дублируйте системные функции: Share,
 Settings, Search, ...
 9. Сохранение изменений выполняется ебз
 подтверждения пользователя (нет кнопки
 «Сохранить»)
Best practices
 10. Главный тайл должен привлекать юзера,
                Application
 выделяться в списке других
 11. Тайлы должны быть живыми – призывать
 юзера зайти в приложение
 12. Подумайте про Lock-screen: IM, E-mail
Best practices
 13. ИспользуйтеApplication
                    контракты: Search, Share,
 Settings, FilePicker,…
 14. Используйте SemanticZoom для экранов с
 большим количеством контента – это
 удобный способ навигации
Best practices
 15. Поддержка SnappedView – особенно для
                 Application
 чатов, новостей, таск менеджеров
 16. Обрабатывайте состояния
 Suspended/Resumed – пользователь не
 должен догадываться, что приложение не
 работало
Best practices
 17. Время стартаApplication
                  приложения менее 5 сек,
 уход в Suspended менее 2 сек
 18. Обязательно Terms of use и About в
 панели настроек
Проблемы платформы
 Мало приложений – проблема ли?
               Application
 Нет компонентов: DatePicker, TimePicker
 Мало OpenSource библиотек
 Windows 8 еще не вышла 
Вопросы и ответы
Спасибо за внимание!

Mais conteúdo relacionado

Semelhante a Экосистема Windows 8 и практика разработки приложений

Hivext – облачная платформа для быстрой разработки интернет приложений
Hivext – облачная платформа для быстрой разработки  интернет приложений Hivext – облачная платформа для быстрой разработки  интернет приложений
Hivext – облачная платформа для быстрой разработки интернет приложений
guest800050
 
DS Activity Monitor
DS Activity MonitorDS Activity Monitor
DS Activity Monitor
mekhos
 
И снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел ТайкалоИ снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел Тайкало
Stanfy
 
Лекция 4
Лекция 4Лекция 4
Лекция 4
itc73
 
Производительность и энергопотребление мобильных приложений на примере Window...
Производительность и энергопотребление мобильных приложений на примере Window...Производительность и энергопотребление мобильных приложений на примере Window...
Производительность и энергопотребление мобильных приложений на примере Window...
Andrew Mayorov
 
Эволюция разработки программного обеспечения
Эволюция разработки программного обеспеченияЭволюция разработки программного обеспечения
Эволюция разработки программного обеспечения
Dima Dzuba
 
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложенийАнтон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
Positive Hack Days
 
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
Positive Hack Days
 
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Ontico
 

Semelhante a Экосистема Windows 8 и практика разработки приложений (20)

Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8
 
Hivext 04.2010
Hivext 04.2010Hivext 04.2010
Hivext 04.2010
 
Hivext – облачная платформа для быстрой разработки интернет приложений
Hivext – облачная платформа для быстрой разработки  интернет приложений Hivext – облачная платформа для быстрой разработки  интернет приложений
Hivext – облачная платформа для быстрой разработки интернет приложений
 
Разрабатываем качественное Windows 8 приложение
Разрабатываем качественное Windows 8 приложениеРазрабатываем качественное Windows 8 приложение
Разрабатываем качественное Windows 8 приложение
 
DS Activity Monitor
DS Activity MonitorDS Activity Monitor
DS Activity Monitor
 
И снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел ТайкалоИ снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел Тайкало
 
Лекция 4
Лекция 4Лекция 4
Лекция 4
 
Бакотек - Файлы регистрации событий как основной элемент обеспечения ит безоп...
Бакотек - Файлы регистрации событий как основной элемент обеспечения ит безоп...Бакотек - Файлы регистрации событий как основной элемент обеспечения ит безоп...
Бакотек - Файлы регистрации событий как основной элемент обеспечения ит безоп...
 
Руководство по формату событий для разработчиков
Руководство по формату событий для разработчиковРуководство по формату событий для разработчиков
Руководство по формату событий для разработчиков
 
MS Swit 2012 - Windows 8 Application Lifecycle
MS Swit 2012 - Windows 8 Application LifecycleMS Swit 2012 - Windows 8 Application Lifecycle
MS Swit 2012 - Windows 8 Application Lifecycle
 
1С-Битрикс - Производительность
1С-Битрикс - Производительность1С-Битрикс - Производительность
1С-Битрикс - Производительность
 
Производительность и энергопотребление мобильных приложений на примере Window...
Производительность и энергопотребление мобильных приложений на примере Window...Производительность и энергопотребление мобильных приложений на примере Window...
Производительность и энергопотребление мобильных приложений на примере Window...
 
Эволюция разработки программного обеспечения
Эволюция разработки программного обеспеченияЭволюция разработки программного обеспечения
Эволюция разработки программного обеспечения
 
Dell Foglight сегодня и завтра. Планы развития
Dell Foglight сегодня и завтра. Планы развитияDell Foglight сегодня и завтра. Планы развития
Dell Foglight сегодня и завтра. Планы развития
 
Что такое мобильная платформа HyperHive
Что такое мобильная платформа HyperHiveЧто такое мобильная платформа HyperHive
Что такое мобильная платформа HyperHive
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложенийАнтон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
 
Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5
 
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
 
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
 

Mais de Mykhail Galushko (7)

Software development process for outsourcing team
Software development process for outsourcing teamSoftware development process for outsourcing team
Software development process for outsourcing team
 
Windows Phone 8.1 Development Platform
Windows Phone 8.1 Development PlatformWindows Phone 8.1 Development Platform
Windows Phone 8.1 Development Platform
 
Фоновые задачи и многозадачность для Windows Phone
Фоновые задачи и многозадачность для Windows PhoneФоновые задачи и многозадачность для Windows Phone
Фоновые задачи и многозадачность для Windows Phone
 
Локализация и глобализация для Windows Phone Store приложений
Локализация и глобализация для Windows Phone Store приложенийЛокализация и глобализация для Windows Phone Store приложений
Локализация и глобализация для Windows Phone Store приложений
 
Creating high rated and reliable Windows 8 application
Creating high rated and reliable Windows 8 applicationCreating high rated and reliable Windows 8 application
Creating high rated and reliable Windows 8 application
 
WinRT: интеграция с С++
WinRT: интеграция с С++WinRT: интеграция с С++
WinRT: интеграция с С++
 
ASP.NET MVC+ Windows Azure: step by step guide
ASP.NET MVC+ Windows Azure: step by step guideASP.NET MVC+ Windows Azure: step by step guide
ASP.NET MVC+ Windows Azure: step by step guide
 

Экосистема Windows 8 и практика разработки приложений

  • 1. Экосистема Windows 8 и практика разработки приложений Михаил Галушко DevRain Solutions
  • 3. Что такое Windows 8 Desktop apps WinRT apps Интеграция с сервисами Windows Store
  • 5. «Умная» многозадачность Приложение работает пока его видит пользователь. Пользователь не должен замечать, что приложение не работало. Возможна работа в фоне в ограниченных случаях.
  • 6. Разработка для Windows 8 WPF Silverlight Windows Phone Web Dev (html/css + js)
  • 9. WinRT Поддержка x86, ARM Доступен DirectX Основан на COM Взял многое из .NET Объектно-ориентирован Асинхронный
  • 10. WinRT – модель работы приложения Activated Suspending Running Not Running Resuming Suspended Terminating
  • 11. WinRT - изолированность Application 1 Application 2 Contracts API API OS Core
  • 12. WinRT - контракты Search Share source/target Settings File picker Printing …
  • 13. WinRT – работа в фоне Run method System Infrastructure Register Event Application Not Running Suspended Register Triggers
  • 14. WinRT – работа в фоне BackgroundTask, Application BackgroundDownloader Интеграция с LockScreen: IM, E-mail
  • 15. WinRT – хранение данных Application LocalFolder RoamingFolder TemporaryFolder
  • 16. WinRT – хранение данных Настройки (key-value) Application Папки и файлы Сторонние решения: SQLite
  • 17. Best practices 1. Читайте гайды Microsoft  Application 2. Учитывайте все размеры и ориентации экранов при разработке дизайна
  • 18. Best practices 3. Контент располагается горизонтально Application 4. Нижняя панель приложения: контекстные действия, верхний – навигация (не обязательно)
  • 19. Best practices 5. Хорошая практика: меню заголовка Application 6. Навигация выполняется с помощью: погружение через контент, меню заголовка + кнопка назад, панель навигации сверху
  • 20. Best practices 7. Не смешивайте контент и действия Application 8. Не дублируйте системные функции: Share, Settings, Search, ... 9. Сохранение изменений выполняется ебз подтверждения пользователя (нет кнопки «Сохранить»)
  • 21. Best practices 10. Главный тайл должен привлекать юзера, Application выделяться в списке других 11. Тайлы должны быть живыми – призывать юзера зайти в приложение 12. Подумайте про Lock-screen: IM, E-mail
  • 22. Best practices 13. ИспользуйтеApplication контракты: Search, Share, Settings, FilePicker,… 14. Используйте SemanticZoom для экранов с большим количеством контента – это удобный способ навигации
  • 23. Best practices 15. Поддержка SnappedView – особенно для Application чатов, новостей, таск менеджеров 16. Обрабатывайте состояния Suspended/Resumed – пользователь не должен догадываться, что приложение не работало
  • 24. Best practices 17. Время стартаApplication приложения менее 5 сек, уход в Suspended менее 2 сек 18. Обязательно Terms of use и About в панели настроек
  • 25. Проблемы платформы Мало приложений – проблема ли? Application Нет компонентов: DatePicker, TimePicker Мало OpenSource библиотек Windows 8 еще не вышла 