этом плане ограничивает?
- Когда мы делали новую платформу, у нас была хорошая возможность использовать богатый опыт создания предыдущих версий. Во времена Windows Mobile было слишком много разных телефонов и слишком много разных приложений. С одной стороны, конечному пользователю не всегда было понятно, как работает телефон и приложения. Почему в журнале или рекламе он видел одно, а в реальности это оказывалось другим. Или почему приложение полностью меняет внешний вид телефона и ведёт себя совершенно по- другому. Используя этот опыт, мы решили задать нижнюю планку, которой должны соответствовать все телефоны - неважно, где и кем они сделаны. Но при этом верхняя планка не ограничена. На данный момент есть производители: Samsung, LG, HTC и Dell. Недавно прошел сертификацию аппарат от компании ASUS.
Если посмотреть на эти телефоны (у меня здесь есть такая возможность), выясняется, что, несмотря на то что они все подходят под одинаковые требования, они все абсолютно разные. У одного больше экран, у другого он ярче, третий аппарат легче, у четвёртого есть клавиатура и так далее. Внутри тоже есть различия: многие производители сделали свою секцию в магазине приложений, некоторые в партнёрстве с операторами сделали свой набор предустановленных приложений. Таким образом, есть и общность платформы, и свобода действия.
- Среди телефонов, которые демонстрировались во время запуска, была модель HTC с собственной оболочкой - HTC Hub. К сожалению, она тогда не работала. Может быть уже видели подробнее, что это такое и зачем оно нужно?
- Я думаю, вы запускали HTC Hub, когда не было соединения с сетью, поэтому ничего не работало. На самом деле в HTC Hub содержится разная информация: погода, котировки, текущее время...
У меня здесь есть AT&T самого популярного американского оператора. Это аппарат Samsung, я сейчас включу и расскажу, что в нём есть. В центре экрана находится AT&T U-Verse - мобильное телевидение для абонентов AT&T. Здесь же есть встроенный навигатор AT&T GPS, предназначенный для использования в машине, и HD-радио AT&T. Есть приложение Now ('Сейчас'), идеологически оно схоже с тем, что я видел в HTC Hub: это погода, новости и котировки акций. Таким образом, если я являюсь абонентом AT&T и покупаю телефон, я в нём сразу вижу те сервисы, на которые я был подписан, или могу сейчас же подписаться на них.
- Вы говорите, что телефоны могут быть самыми разными, но стандартизирована даже такая вещь, как разрешение экрана. Это временное ограничение, или набор разрешений всегда будет жёстко задан?
- На самом деле разрешение - это та область, в которой минимальное количество сторон хотят большей свободы. То есть если мы слышим разные отзывы о других ограничениях, то ограничения на разрешение экрана практически всеми встречаются очень положительно. Дело в том, что разнообразие разрешения экрана до этого было большой проблемой как для разработчиков, так и для пользователей. Основная проблема заключалась в том, и мы это сейчас видим на примере других платформ, что если свобода разрешения экрана очень большая, то разработчик вынужден тестировать свое приложение на всём разнообразном оборудовании. Хотя второе разрешение экрана действительно появится; это было анонсировано еще в марте. Второе разрешение будет поменьше. Но это скорее заделы на будущее - пока непонятно, когда это будет реализовано.
- Давайте вернёмся к разговору о платформе и об управляемом коде. Не оказывается ли так, что он замедляет работу телефона?
- Это самый первый вопрос, который задает любой разработчик, который знакомится с платформой Windows Phone 7. Он вполне понятен, поскольку исторически любая виртуальная машина является пусть и небольшим, но замедлением. Windows Phone 7 в этом плане сильно отличается от всего того, что было раньше - к примеру, в настольных операционных системах. В данном случае сама ОС разрабатывалась уже после создания виртуальной машины и именно для неё. Поэтому Silverlight и XNA не являются надстройкой над операционной системой, а скорее, частью ОС. Она спроектирована таким образом, чтобы для самой системы эти фреймворки и платформы были родными. Поэтому производительность остаётся на максимальном уровне, к тому же работает аппаратное ускорение графики. Например, в Silverlight она полностью аппаратно ускорена на всех телефонах Windows Phone 7.
- Windows Phone 7 не единственная платформа, и не доминирующая. Разработчики наверняка захотят писать кроссплатформенные приложения. Какие у них есть варианты? Насколько легко портировать приложения? Насколько сложно портировать на Windows Phone 7, скажем, игру, которая уже сделана для iPhone?
- Да, это хороший вопрос, и все мы прекрасно знаем, что рынок мобильных платформ сейчас максимально конкурентен. Мне кажется, что для разработчиков это такое золотое время, когда стоит обратить отдельное внимание на данную область. При этом интересно наблюдать, что в этой области по сути каждый вендор, каждый производитель платформы предлагает особенный путь разработчика, и поэтому сегодня нет практической возможности писать один раз для нескольких платформ. Скорее наоборот, платформы потихоньку расходятся в разных направлениях. Об этом сейчас много говорят. В чистом виде портирование невозможно, но сделать версию приложения для другой платформы сравнительно несложно.
У нас есть хороший пример: успешная компания, делающая приложения для iOS, портировала за три дня свою популярную игру на Windows Phone 7, после чего та прошла сертификацию в нашем магазине и её уже продают в разных странах, и очень успешно. Портировать игру не так сложно, как приложение. В случае с приложением нужно не только переписать код с учётом особенностей платформы, но и привести интерфейс в соответствие со стилем платформы.
- Переходить с Windows Mobile, наверное, легче?
- Это зависит от того опыта, который есть у разработчиков. Разработчики, уже имеющие опыт работы с нашей платформой, знакомы со средой разработки - Visual Studio, да язык может быть знакомым - это C#. На рынке мобильных разработок можно выделить две условные категории: 'простые' и 'серьёзные' приложения. Простых больше, и простые приложения здесь делаются очень быстро. Главное - иметь идею, и если она есть, то написать приложение можно достаточно просто и быстро. Поэтому сам процесс портирования в любом случае не такой сложный.
- На телефонах Nokia, как я знаю, тоже установлен Silverlight. Значит ли это, что там можно запускать те же самые приложения и разработчикам будет как-то легче их портировать и выпустить на двух разных платформах?
- Да, действительно на платформе Symbian на телефонах Nokia есть версия Silverlight, однако там она реализована как плагин для браузера. А в Windows Phone 7 это платформа для настольных приложений, ну в данном случае не настольных, а 'нателефонных'. Поэтому код, естественно, можно использовать...
- Но при этом на Symbian ещё придется использовать и браузер для этого?
- Да, и на самом деле возможности могут различаться. На Windows Phone 7 Silverlight позволяет не только обрабатывать графику и анимацию; там есть доступ к разным сенсорам и функциям телефона. В Silverlight для Nokia этих функций нет. Там это просто фреймворк для выполнения кода в браузере. Если это приложение не использует телефонных функций, тогда портировать легко. Если использует, тогда всё сложнее.
- Раз мы заговорили о браузерах и плагинах, давайте затронем и тему Flash для Windows Phone 7. Может быть, он уже предустанавливается в какие-либо телефоны? Или известно, когда можно будет сразу установить плагин?
- На данный момент в Windows Phone 7 в браузере нет поддержки технологии Flash, хотя компания Adobe с нами активно работает над поддержкой этой технологии. В WP7 есть, к примеру, возможность установки Adobe Reader - то есть компания Adobe успешно пишет приложения для Windows Phone 7.
Во-вторых, самый популярный сценарий использования Flash в телефоне - это ролики с Youtube, и для Windows Phone 7 есть специальное бесплатное приложение. Это сейчас самое популярное бесплатное приложение для Windows Phone 7. Работает оно просто: если человек открывает сайт, на котором есть ролик Youtube, и нажимает кнопку 'play', то автоматически вызывается соответствующее приложение и ролик проигрывается.
- Но вторая популярная вещь, для которой используют Flаsh, - это разработка игр. Есть масса