Главная » Разработка для Windows Phone 7 » Здравствуй, Windows Phone 7

0

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

Перезагрузка на рынке мобильных телефонов инициирована новым подходом Майкрософт. Прекрасный внешний вид, необыкновенные шрифты и новые принципы компоновки Microsoft Windows Phone 7 делают его не просто символом разрыва с прошлым (Windows Mobile), но и выгодно отличают от других смартфонов, представленных на рынке в настоящее время. Устройства, работающие под управлением Windows Phone 7, будут выпускаться несколькими производителями и предлагаться рядом операторов мобильной связи.

Поддержка двух популярных в настоящее время платформ разработки, Silverlight и XNA, гарантирует, что в Windows Phone 7 найдется много интересного и для разработчиков.

Silverlight – браузерное развитие Windows Presentation Foundation (WPF) – уже обеспечил Веб-разработчиков беспрецедентными возможностями разработки сложных пользовательских интерфейсов, предоставляя традиционные элементы управления, высококачественный текст, векторную графику, мультимедиа, анимацию и привязку данных, которые могут выполняться во множестве браузеров и на разных платформах. Windows Phone 7 расширяет использование Silverlight на мобильные устройства.

XNA (три буквы, обозначающие «XNA не аббревиатура») – это игровая платформа Майкрософт, поддерживающая основанную на спрайтах 2D графику и 3D графику с традиционной архитектурой игрового цикла. Несмотря на то, что главным предназначением XNA является написание игр для консоли Xbox 360, разработчики могут создавать на XNA программы и для ПК, и для стильного аудиоплеера Майкрософт Zune HD.

И Silverlight, и XNA могут использоваться в качестве платформы приложения для Windows Phone 7, выбор за разработчиками. И вот здесь возникает, как говорится, «проблема выбора».

Разработка для Windows Phone 7

Все программы для Windows Phone 7 создаются с использованием управляемого кода .NET. Предлагаемые в данной книге примеры написаны на C#, но приложения для Windows Phone 7 могут создаваться и на Visual Basic .NET. Свободно доступный для загрузки Microsoft Visual Studio 2010 Express for Windows Phone включает XNA Game Studio 4.0 и экранный эмулятор телефона, а также интегрируется с Visual Studio 2010. Визуальные элементы и анимация для приложений Silverlight могут создаваться в Microsoft Expression Blend.

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

Как правило, Silverlight используется для программ, которые можно классифицировать как приложения или утилиты. Эти программы являются сочетанием разметки и кода. Для

описания разметки – главным образом, компоновки элементов управления и панелей пользовательского интерфейса – используется Расширяемый язык разметки приложений (Extensible Application Markup Language, XAML1). В файлах выделенного кода могут реализовываться операции по инициализации и некоторая логика, но основным их назначением является обработка событий элементов управления. Silverlight позволяет реализовать в Windows Phone стиль Насыщенных Интернет-приложений (Rich Internet Applications, RIA), включая мультимедиа и Веб. Для Windows Phone создана версия Silverlight 3, в которую не вошли некоторые возможности, не подходящие для телефона, но они компенсированы рядом дополнений.

Главное назначение XNA – создание высокопроизводительных игр. Для 2D игр спрайты и подложки описываются с помощью растровых изображений; для 3D игр создаются трехмерные модели. Действие игры, включающее перемещение графических объектов по экрану и запрос пользовательского ввода, обрабатывается встроенным игровым циклом XNA.

Удобно провести границы и принять, что Silverlight используется для приложений, а XNA – для игр, но это не должно накладывать ограничения. Вне всяких сомнений, Silverlight может применяться для реализации игр, и традиционные приложения могут создаваться на XNA, хотя подчас это будет сопряжено со значительными трудностями.

В частности, Silverlight идеально подходит для игр с небольшими требованиями по графике, либо использующих векторную, а не растровую графику, либо темп которых определяется реакцией пользователя, а не таймером. Программы такого типа, как Тетрис, прекрасно могли бы быть реализованы на Silverlight. А вот XNA довольно сложно распространить на области применения Silverlight. Реализация окна списка на XNA может быть занятным для некоторых разработчиков, но для основной массы программистов это было бы пыткой.

В первых нескольких главах данной книги Silverlight и XNA рассматриваются параллельно, затем каждой платформе посвящается отдельная часть. Я подозреваю, что некоторые разработчики займутся исключительно Silverlight или XNA и даже не будут утруждать себя изучением другой среды. Надеюсь, что это явление не примет массового характера. Положительный момент в том, что Silverlight и XNA настолько не похожи, что между ними можно переключаться туда и обратно без всякой путаницы!

Майкрософт позиционируют Silverlight как клиентскую часть или «лицо» облака. Таким образом, сервисы облака и Windows Azure Platform формируют важную составляющую разработки приложений для Windows Phone 7. Windows Phone полностью «готов к работе с облаком». Программы учитывают местонахождение пользователя и имеют доступ к картам и другим данным посредством Bing и Windows Live. Один из предлагаемых сервисов облака – Xbox Live – обеспечивает возможность участия программ XNA в многопользовательских сетевых играх и также доступа к ним приложений Silverlight.

Программы, создаваемые вами для Windows Phone 7, будут продаваться и устанавливаться через сайт партнерских решений для Windows Phone (Windows Phone Marketplace). Этот сайт обеспечивает регистрацию и гарантирует, что программы отвечают минимальному набору требований надежности, эффективности и нормам этики.

Я охарактеризовал Windows Phone 7 как символ разрыва с прошлым. Если проводить сравнение с предыдущими версиями Windows Mobile, это, несомненно, так. Но поддержка Silverlight, XNA и C# не разрывает связей с прошлым, а является сбалансированным сочетанием преемственности и нововведений. Несмотря на свой младенческий возраст, Silverlight и XNA уже зарекомендовали себя как мощные и популярные платформы. Многие

опытные разработчики уже работают с одной из этих инфраструктур (вероятно, не так многие с обеими, но это лишь пока) и демонстрируют свое воодушевление, публикуя огромное количество информации в сети и организуя множество сообществ. C# стал любимым языком многих разработчиков (и моим в том числе). Он обеспечивает возможность совместного использования библиотек Silverlight и XNA приложениями, а также программами для других .NET-сред.

Источник: Чарльз Петзольд, Программируем Windows Phone 7, Microsoft Press, © 2011.

По теме:

  • Комментарии