Windows Phone 7 Application Development

1,080 views
955 views

Published on

Presentation from Microsoft SWIT 2010 Conference

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,080
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Windows Phone 7 Application Development

  1. 1.
  2. 2.
  3. 3. Разработка приложений для Windows Phone 7<br />Сергей ЛутайDigital Cloud Technologies<br />
  4. 4. Содержание<br />
  5. 5. Виды приложений<br />Silverlight XNA<br /><ul><li>Событийная модель </li></ul> приложения<br /><ul><li>Быстрое создание пользовательского </li></ul> интерфейса<br /><ul><li>Разработка бизнес </li></ul> приложений<br /><ul><li>HTML/JavaScript
  6. 6. Высоко-производетельная игровая платформа
  7. 7. Быстрое создание многооконных2D и 3D игр
  8. 8. Мощная технология используемая в сервисахXbox 360, Windows, иZune</li></li></ul><li>Возможности разработчикам<br />
  9. 9. GPS<br />+Точность<br />-Питание<br />-Скорость<br />-Помещение<br />-Точность<br />+Питание<br />+Скорость<br />-Зона<br /> покрытия<br />WiFi<br />+/-Точность<br />+/-Питание<br />+/-Скорость<br />+/-Городская <br /> зона<br />Вышки <br />мобильной <br />связи<br />Location services<br />
  10. 10. Push Notification Flow<br />
  11. 11. +Y<br />-Z<br />-X<br />+X<br />+Z<br />-Y<br />
  12. 12. <ul><li>скрытый
  13. 13. приостановленый</li></li></ul><li>Возобновление состояния<br />Пользователь не знает что случится<br /><ul><li>Кнопка старт
  14. 14. Звонок</li></ul>Сохранение состояния<br />Возможность удаления процесса<br />
  15. 15. Архитектура<br />
  16. 16. Архитектура<br />Applications<br />Your App UI and logic<br />Frameworks<br />Silverlight<br />XNA<br />HTML/JavaScript<br />CLR<br />App Model<br />UI Model<br />Cloud Integration<br />Xbox LIVE<br />Bing<br />Location<br />Push notifications<br />Windows Live ID<br />App management<br />Licensing<br />Chamber isolation<br />Software updates<br />Shell frame <br />Session manager<br />Direct3D<br />Compositor<br />Kernel<br />Hardware BSP<br />Security<br />Networking<br />Storage<br />A-GPS Accelerometer Compass Light Proximity<br />Media Wi-Fi Radio Graphics<br />Hardware Foundation<br />
  17. 17. Профилирование<br />
  18. 18. Профилирование<br />
  19. 19. Профилирование<br />http://eqatec.com<br />
  20. 20. Повышение производИтельности<br />
  21. 21. ≠<br />
  22. 22. Потоки: интерфейс & компоновщик<br />Интерфейс<br />- CPU<br />Компоновщик - GPU<br />
  23. 23. Флаги отладки<br />
  24. 24. Флаги отладки<br />Redraw <br />Regions<br />Cache Visualization<br />
  25. 25. Автоматическое кеширование<br />Часть анимации в разметке<br />При использовании Plane Projection<br />MediaElement<br />Вложенные элементы в Scrollviewer<br />ListboxItems<br />
  26. 26. демо<br />Потоки и счетчики<br />
  27. 27. Анимация в коде<br />void CompositionTarget_Rendering(object sender, EventArgs e)<br />{<br /> . . . .<br />}<br />rect.CacheMode = new BitmapCache();<br />
  28. 28. Скрытие/Отображениеобъектов<br />Visibility<br />vs<br />Opacity<br />
  29. 29. Использование XAML или картинокдля отображения<br />
  30. 30. Форматы изображений<br />*Ограничение: 2k x 2k<br />
  31. 31. Оптимизация загрузки приложения<br />Не включайте ресурсы в сборки.<br />Разбивайте приложения на маленькие сборки и загружайтеих по требованию.<br />Используйте jpeg вместо png.<br />
  32. 32. Оптимизация кода конструкторов и обработчиков события Loaded<br />Пример– использованиеобработчика события LayoutUpdatedпри запуске<br />LayoutUpdated += new EventHandler(Page_LayoutUpdated);<br />OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)<br />{ _onNavigatedToCalled = true; }<br />
  33. 33. Оптимизация кода конструкторов и обработчиков события Loaded<br />private void Page_LayoutUpdated(object sender, EventArgs e)<br />{<br /> if (_onNavigatedToCalled == true)<br /> {<br /> _onNavigatedToCalled = false;<br />Dispatcher.BeginInvoke(() => <br /> {<br /> // Do your stuff here, in the “future”<br /> }<br /> );<br /> } <br />}<br />
  34. 34. Итого…<br />
  35. 35. Ресурсы<br />http://msdn.microsoft.com/en-us/library/ff402551(VS.92).aspx<br />http://developer.windowsphone.com/<br />http://channel9.msdn.com/shows/Inside+Windows+Phone/Inside-Windows-Phone-03-Optimizing-Windows-Phone-Silverlight-applications/<br />http://lutay.uneta.com.ua<br />
  36. 36. Сергей ЛутайРуководитель департамента разработки Silverlight приложенийMVP, MCT, MCPDserhii.lutai@dctua.comhttp://lutay.uneta.com.ua@sergeylutay<br />

×