Posted on 18. September 2010

Тренинг по Windows Phone 7

Windows Phone 7Если помните, компания Microsoft уже проводила тренинг по разработке приложений для Windows Phone 7. Но этот тренинг был по Beta версии инструментов разработки.

21 сентября компания проводит еще один тренинг по разработке Windows Phone 7 приложений с использованием финальной версии интрументов разработки и более глубоком рассмотрении материалы. Поэтому рекомендую посмотреть записанные сессии предыдущего тренинга. Длительность тренинга 7 часов. Он разделена на две сесии:

С 18.00 до 21.00 (Киевское время) – будут рассмотрены элементы управления Panorama, Pivots, Bind Maps и разработка XNA приложений;

С 22.00 до 02.00 (Киевское время) – планирование и оптимизация производительности, разработка дизайна приложений с Microsoft Blend и вопросы-ответы.

Зарегистрироваться на трениг можно здесь:



Posted on 17. September 2010

Windows Phone 7 Developer Tools RTM

С удовольствием сообщаю, что вышла финальная версия интрументов разработчика Windows Phone 7 приложений. Ее можно скачать и здесь(образ). Все интрументы, которые входят в состав пакета, являются бесплатными. И если у вас уже установлена одна из редакций Visual Studio 2010, то в ней добавится возможность создавать WP7 приложения.

Установочный пакет включает в себя следующие инструменты:

  • Visual Studio 2010 Express for Windows Phone;
  • Express Blend 4 for Windows Phone;
  • Silverlight for Windows Phone 7;
  • Game Studio for Windows Phone 7;
  • Windows Phone Emulator;
  • Phone Registration Tool.

После обновления инструментов в окне создания WP7 приложений появилось несколько новых шаблонов:

  • Windows Phone Panorama Application – шаблон использует элемент управления Panorama для отображения интерфейса;
  • Windows Phone Pivot Application – шаблон использует элемент управления Pivot, который позволяет переключаться между представлениями или страницами внутри приложения;
  • Windows Phone List Application сменил название на Windows Phone Databound Application – шаблон использует элемент управления ListBox и возможности навигации. Можно использовать при разработке различных приложений с отображеним данных.

image

Рекомендую попробовать каждый из шаблонов.

Но только выходом инструментов это не закончилось. Microsoft еще выпустила:

Ссылки по теме:



Posted on 10. September 2010

Счетчики в Silverlight

В предыдущей публикации, я рассказал, что Silverlight приложения работают в двух потока на платформе Windows Phone 7. Но хорошо бы еще и знать как эти потоки используются во время работы приложения. Такая возможность есть. Необходимо включить отображения счетчика кадров:

Application.Current.Host.Settings.EnableFrameRateCounter = true;

Но включив только этот параметр, вы ничего не увидите на дисплее эмулятора. Необходимо еще отключить отображение системного трея, так как по умолчанию он включен. Для этого необходимо установить параметр страницы SystemTray.IsVisible в false. Это можно сделать в XAML коде:

shell:SystemTray.IsVisible="False"

или С#:

this.SetValue(Microsoft.Phone.Shell.SystemTray.IsVisibleProperty, false);

После запуска приложения на эмуляторе появится ряд значений:

image

  1. Счетчик кадров потока компоновщика. Показывает как часто любая из поддерживаемых анимация обновляет интерфейс. В идеале данное значение должно быть как можно ближе к 60.
  2. Счетчик кадров потока интерфейса. Показывает как работает интерфейсный поток. Чем больше значение этого счетчика, тем быстрее будет приложение. Разработчики платформы рекомендуют, что бы значение не опускалось ниже 20 для обеспечения приемлемой скорости взаимодействия с пользователем.
  3. Используемая память для текстур. Показывает объем используемой видео памяти для текстур. Это не общий счетчик использование памяти.
  4. Количество поверхностей. Данный счетчик показывает количество поверхностей, которые обрабатывается с использование GPU.
  5. Количество неявных поверхностей.Существуют промежуточные поверхности, которые создаются в результате кеширования других поверхностей. Промежуточные поверхности создаются между элементами управления и учавствуют в порядке отображения(Z-order).
  6. Счетчик заливки. Отображает количество пикселей, которые были закрашены в кадре в понятии экранов. Данный счетчик присутствует на рельном устройстве.



Posted on 5. September 2010

Потоки в Silverlight приложениях

В обычных (для веба и вне браузера) Silverlight приложениях по-умолчанию используется только один поток (интерфейсный) для выполнения пользовательского кода и работы инфраструктуры. И только некоторая часть механизмов технологии выполняется в паралельных потоках. Например сетевое взаимодействие (загрузка ресурсов из веба, взаимодействие с сервисами). Из этого следует, что если перегрузить интерфейсный поток задачами, то мы заблокируем не только возможность взаимодействия пользователя с приложением, но и весь браузер (для режима работы в браузере). Что бы этого избежать необходимо использовать дополнительные потоки, детали смотрите здесь.

hubsНо для Silverlight приложений во время работы на платформе Windows Phone 7 по-умолчанию доступно больше чем один интерфейсный поток.

При переносе Silverlight технологии на WP7, графическое ядро было изменено в соответсвии с условиями в которых необходимо работать приложениям. Как результат для Silverlight приложений в WP7 доступно по умолчанию два потока:

  • интерфейсный поток (UI thread) – отвечает за взаимодейсвие с пользователем и в нем выполнятеся код разработчика. Вычисления происходят с использованием CPU;
  • поток компоновщика (Compositor thread) – в этом потоке выполняется часть анимации. Вычисления происходят с использованием GPU.

Интерфейсный поток (UI thread)

Механизм работы этого потока похож на механизм работы интерфейсного потока Silverlight плагина для браузера. В интерфейсном потоке WP7 выполняются следующие задачи:

  • взаимодействие с пользователем;
  • разбор и создание объектов из XAML кода;
  • рисование графических эффектов при первом их создании;
  • код разработчика.

В виду того, что данный поток отвечает за получение данных от пользователя, отрисовку интерфейса, выполнения кода приложения, крайне важно чтобы поток оставалса максимально свободным. Поддержание максимально свободного интерфейсного потока является ключевой задачей для быстрых приложений

Поток компоновщика (Compositor Thread)

Это новый поток для Silverlight технологии, который появился в Windows Phone 7. Он позволяет часть операций Silverlight приложения переложить на GPU утсройства. Поток компоновщика выполняет несколько видов анимации которые выполняются упралвяя базовой текстурой на GPU. Что бы использовать этот механизм необходимо анимацию реализовывать через класс Storyboard. При использовании механизма анимации в коде данный потом задействовать невозможно. Задействовать этот поток можно используя следующие типы анимации:

  1. Opacity;
  2. Scale Transform;
  3. Render Transform;
  4. Rotate Transform;
  5. Plane Projection.

Но существует ряд ограничений, когда анимация не будет выполняться в этом потоке, а имеено, когда происходит анимация:

  1. Opacity Mask;
  2. не прямоугольная вырезка объекта;
  3. текстура анимированного объекта больше чем 2k x 2k пикселей.

Таким образом при умелом использовании новых возможностей Silverlight технологии для WP7 платформы можно повысить производительность своих приложений.

Думаю, что внесенные изменения в Silverlight технологию для платформы Windows Phone 7 стануть частью новых возможностей расширения для браузера Silverlight 5-й версии.



Posted on 3. September 2010

Windows Phone 7 - RTM

1 сентября Terry Myerson в блоге Windows Phone анонсировал выход Windows Phone 7 платформы финальной версии. Сейчас данную версию передали производителям мобильных устройств для ее установки.

Windows Phone 7 одна из наиболее протестированных платформ, которые Microsoft когда либо выпускала. Около 10 тыс. устройств ежедневно выполняли автоматизированные тесты, больше половини миллиона часов использования платформы, больше 3,5 млн часов удачных стресс тестов, 8,5 млн часов успешно завершенных атоматизированных тестов. Тысячи независимых поставщиков ПО тестировали платформу и писали отзывы о платформе.

После такого можно и в космос ;).

Осталось дело за малым: дождаться инструментов разработчика RTM версии (будут доступны 16 сентября) и реальных устройств.



Posted on 1. September 2010

Windows Phone 7 и Facebook API

Posted on 23. August 2010

16 сентября–дата выхода финальной версии Windows Phone Developer Tools

Brandon Watson в интервью для Channel 9 объявил, что 16 сентября выйдет финальная версия Windows Phone Developers Tools.

Финальная версия инструментов для разработки Windows Phone приложений будет содержать небольшие изменения относительно Beta версии инструментов. Так что разработчикам придется исправить несколько ошибок, которые могут возникнуть во время перевода приложений. Кроме этого последняя версия будет содержать несколько дополнительных Silverlight элементов управления, которые упростят разработку приложения для Windows Phone платформы. С выходом инструментов будут доступны элементы управления panorama, pivot и Bing maps.

Кроме того, что инструменты разработчиков, элементы управления и сама платформа позволяют разрабатывать великолепные приложения, существует необходимость в обучающем материале. С этой целью компания Microsoft провела открытый тренинг с использованием MVP, Andy Wigley и Rob Miles. Тренинг содержит 12 часов презентаций с упражнениями. К тому же существует Windows Phone 7 Developer Training Kit. В ближайшее время должно появиться еще больше материалов по изучению разработки Windows Phone 7 приложений.

P.S.: Windows Phone Developer Tools уже скачано 300 000 раз.



Posted on 19. August 2010

Halo Waypoint будет на Windows Phone 7

HaloHalo Waypoint – это приложение для доступа к аудио и видео контенту в дополнение к существующим возможностям сообщества, а также оно позволяет отслеживать “Halo карьеру”. Приложение будет отслеживать вашу активность в игре и различные достижения. Приложение будет доступно вместе с выходом Windows Phone 7 платформы и будет бесплатно рапостраняться. Halo Waypoint разработано с ипользованием Silverlight технологии.

Детали процесса разработки и возможности приложения смотрите в интервью Dan Ayoub на Channel9.



Posted on 15. August 2010

Запись Windows Phone Design Day

Компания Microsoft провела так называемый Windows Phone Design Day. Идея этого события заключалась в том, что компания пригласила несколько своих партнеров для записи их опыта по разработке.

Если вы разработчик или дизайнер и занимаетесь разработкой приложений для Windows Phone 7, то вы должны посмотреть эти записи:

Оригинал



Posted on 8. August 2010

Руководство по созданию производительных Silverlight приложений для WP7

Компания Microsoft опубликовала документацию по созданию высокопроизводительных приложения для платформы Windows Phone 7.

В сравнении с персональными компьютерами и ноутбуками, Windows Phone 7 устройства более ограничены в производительности CPU и GPU. Для успешной работы Silverlight приложений на Windows Phone 7 были сделаны значительные изменения в графическом ядре Silverlight  технологии и других ее компонентах.

Данный документ содержит трюки, подсказки и примеры, которые вы можете использовать при разработке производительных Silverlight приложений для Windows Phone 7.

Вместе с руководством идет несколько примеров:

  1. FillRateTest;
  2. PerspectiveFillRate;
  3. PerFrameCallBack;
  4. HidingObjects;
  5. LoadingLargeImages;
  6. SplittingAppAcrossDlls.

Руководство находитсяв предварительной версии и возможно оно поменятеся с выходом финальной версии платформы Windows Phone 7.

Скачать Creating High Performance Silverlight Applications for Windows Phone