Сложно ли написать приложение для WP7 используя HTML и JavaScript?

Рано или поздно, но радость от обладания девайсом на WP7 потихоньку утихает, перерастая в привычку. Потреблять контент удобно, но хочется привнести и свой полезный вклад в платформу. Так как моё знание C# стремится к нулю, я буду использовать то, что хорошо знаю: HTML, CSS и JavaScript.

Короче, вместо того чтобы учить полезный си шарп мы займёмся танцем с бубном над платформой. В будущем эти танцы могут нам сильно пригодиться, так как по предварительным сведениям в платформе Windows Phone 8 может быть нативная поддержка HTML5-приложений.

Первое что нам необходимо — это Windows Phone SDK. Если вы просто хотите пощупать бесплатную версию Visual Studio 2010 (которая и лежит в основе этого SDK), то дважды подумайте, так как за собой эта среда разработки тянет штук 20 дополнительных пакетов.

Список приложений после установки SDK

Список приложений после установки SDK

Установка и регистрация (полностью бесплатная, кстати) довольно просты, на этом моменте можно внимание не заострять.

Следующий инструмент, который нам понадобиться — фреймворк PhoneGap. Очень полезная штука, со многими оговорками, но позволяет писать кроссплатформенные приложения используя HTML и JavaScript.

Скачиваем пакет и по инструкции копируем файл Cordova-1.5.0-Starter.zip в папку : Users\[Имя пользователя]\My Documents\Visual Studio 2010\Templates\ProjectTemplates\. Если такая папка еще не создана, значит вы еще не запускали Visual Studio.

Теперь при запуске Visual Studio мы можем создать проект на основе этого фреймворка.

PhoneGap в Visual Studio

PhoneGap в Visual Studio

Создаваемые им файлы знакомы любому, кто хоть немного сталкивался с веб-разработкой:

Файлы PhoneGap

Файлы PhoneGap

Исходный код этих файлов также не вызывает никаких нареканий:

Так что вполне можно начинать писать приложение как веб-страницу. Никто, кроме нашей совести, не помешает нам использовать библиотеки для оптимизации работы с JavaScript, jQuery, например.

Дальнейший простор ограничен только вашей фантазией. Можете написать приложение которое будет обращаться к вашему серверу, где будут производится необходимые операции, а код на сервере пишите хоть на PHP.

При работе этого приложения будет использоваться все возможности которые предоставляет Internet Explorer 9 Mobile.

Поддержка HTML5 в Internet Explorer 9 Mobile

Поддержка HTML5 в Internet Explorer 9 Mobile

Теперь о технических засадах, которые могут ожидать на тернистом пути к хорошему приложению:

  1. Тяжёлые скрипты, здоровенные AJAX-запросы, мегабайты JSON-данных. Не забывайте, что вы пишите приложение для мобильного телефона у которого нет шестиядерного процессора с тепловыделением как у старой лампы накаливания. Чем тяжелее скрипты тем хуже всё будет работать.
  2. Скорость работы JavaScript. Частично пересекается с п.1. Тот JS-код, что на десктопе выполняется доли секунды на мобильном устройстве может занять на порядок больше времени. Минималистичность наше всё.
  3. Кэширование AJAX-запросов. Как и старший брат, мобильный браузер имеет привычку кэшировать запросы с одинаковыми входящими параметрами. На десктопе это решается добавлением в запрос какой-нибудь уникальной величины, например значения PHP-функции time().

Теперь одна из технических засад, которая больше «железная»:

Проблема эмулятора

Проблема эмулятора

Вам нужна нормальная видеокарта

Да, далеко не все встроенные видеоадаптеры, а особенно старые, позволяют нормально работать эмулятору WP7. Поэтому возможно придётся совершить давно запланированный апгрейд своему железному другу.

На своём телефоне вы протестировать своё приложение сможете после анлока, который вам может предоставить статус разработчика для этой платформы, но это уже тема для отдельной статьи.

Вот в принципе и всё необходимое чтобы начать разрабатывать под платформу WP7. Как видите, это абсолютно не представляет сложности.

Удачного кодинга.

Постоянный адрес статьи Пинги запрещены.