Инстументарий для программирования в Bada
Предложенный разработчикам инструментарий позволяет писать код не для конкретной ОС, а работать с определенными функциями (например, оболочкой, контактами) а ОС с которыми работает эта надстройка может быть несколько, В рамках бета-версии SDK доступ осуществлялся только к функциям TouchWiz 3D и ряду системных функций, что позволяет сказать, что фактически Bada это надстройка к интерфейсу. В будущем развитие средств разработки программ позволит писать полнофункциональные программы, задействующие не только интерфейс, но и другие возможности телефона (не затрагивая ОС, лежащую в основе).
Вспомним, что компания Samsung стала первым производителем, кто транслировал интерфейс TouchWiz с собственных устройств на другие ОС, т.е. сделали этот интерфейс кросс-платформенным, чтобы приучить потребителей к нему. Не важно, какая ОС, важно, что везде потребитель видит один и тот же интерфейс и ассоциирует его с компанией Samsung. BADA позволит быстро реагировать на расстановку сил на рынке операционных систем, не привязываясь ни к одной из них, что является достаточно гибкой стратегией.
Компания Samsung активно взялась за работу с разработчикамипрограммного обеспечения, так что уже к моменту выхода OC Bada на рынок для нее было доступно большое количество разнообразных программ, игр и виджетов, сконцентрированных на специализированном ресурсе Samsung Apps.
Инстументарий для программирования iPhone
До официальной публикации SDK у разработчиков не было возможности легальной разработки native приложений для iPhone и iPod Touch. Учитывая огромный интерес к iPhone, Apple пошла на компромисс: позволила сторонним разработчикам создавать так называемые виджеты приложения, выполняемые в веббраузере Safari, интегрированном в iPhone и iPod Touch. Основным отличием виджетов от nativeприложений является необходимость написания кода не на Objective C, а с использованием стандартных вебтехнологий вроде HTML, CSS, JavaScript и AJAX. С точки зрения пользователя такое приложение отличается тем, что выполняется в веб-браузере и открывается не путем выбора иконки из главного меню устройства, а при выборе закладки. Для ознакомления с процессом создания и развертывания виджетов для iPhone рекомендую почитать книгу «Professional iPhone and iPod Touch Programming», а также заглянуть на http://developer.apple.com/webapps/.
Отсутствие официальной возможности создавать ПО не остановило энтузиастов. Они подготовили средства разработки, позволяющие создавать полноценный софт для JailBreaked iPhone. В процессе JailBreaking на аппарат устанавливается софтина с немудреным названием Installer. С ее помощью пользователи могут скачивать и устанавливать необходимый софт из каталога, который формируется из репозиториев (их адреса прописываются вручную в Installer). Так что JailBreaking не только разлочка, но и процедура, позволяющая получить полный доступ к файловой системе iPhone. Описание процесса без труда можно найти в Сети, поэтому мы не будем на этом останавливаться. Софт, распространяющийся через Installer, написан с использованием «неофициального» процесса разработки. До недавнего времени иного пути создания и даже установки стороннего ПО в iPhone не было.
Но в марте 2010 года Apple осчастливили-таки общественность публикацией первой беты SDK. С тех пор на офсайте разработчиков Apple периодически публикуются новые версии беты SDK и документации (на момент написания пособия наиболее актуальной была восьмая). SDK представляет собой IDE XCode, набор необходимых библиотек, эмулятор и другие инструменты.
Чтобы программировать под iPhone, нужен Mac с установленной Mac OS X Leopard. Грустно, но это так. Вообще говоря, можно развернуть среду разработки на Unix и даже пытаться писать из-под VMWare, но это связано с рядом сложностей, которые бурно обсуждаются в интернете. Кроме того, необходимо установить и сконфигурировать SDK. Описание процесса настройки рабочей станции для «неофициальной» разработки можно прочитать в замечательной книжке «iPhone Open Application Development», которую легко найти в Сети.
При разработке приложений для iPhone OS, а также MacOS 10.5 и выше используется язык программирования Objective C 2.0. Он является своеобразной надстройкой над ANSI C, предназначенной для гибкого объектно-ориентированного программирования. Не совсем понятно, чем Apple не угодил С++. Многие концепции Objective C заимствованы у одного из первых объектно-ориентированных языков Smalltalk. Тем не менее, программа для iPhone может содержать как код на Objective C, так и на C или C++.
При компиляции используются инструменты GNU Compilers Collection, которые распознают принадлежность кода к конкретному подвиду GNU C/C++ по расширению файла. В частности, C код содержится в файлах с расширением *.c; C++ код в *.mm; Objective C в *.m.
Как видно из вышесказанного, одно перечисление (и то не всех) технологий и инструментов разработки программного обеспечения для мобильных устройств занимает достаточно много места, а для подробного освещения этих технологий требуется не один том учебной литературы. В нашем курсе мы познакомимтя с наиболее общей технологией создания приложений мобильного мира технологией создания мидлетов. С остальными технологиями (по необходимости) программист, имеющий навык создания мидлетов, сможет освоится сам.
Успехов Вам в изучении курса!
2 Разработка приложений для Windows Phone
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.
Для разработки приложений под Windows Phone желательно иметь Visual Studio 2010 c Service Pack 1 редакции Professional или выше и пакет разработчика Windows Phone SDK 7.1 (это инструментарий на начало 2012 года, в дальнейшем номера версий будут меняться). Взять Service Pack 1 для VS-2010 (бесплатно) можно по адресу: http://go.microsoft.com/fwlink/?LinkId= 210710, а Windows Phone SDK 7.1 (тоже бесплатно) с адреса http://go.microsoft.com/fwlink/?LinkID=226694.
Если у вас нет Visual Studio 2010 Professional, то пакет Windows Phone SDK 7.1 вы все-равно можете установить себе на ПК. В момент установки вам автоматически будет установлена бесплатная версия Visual Studio 2010 Express for Windows Phone, на которой также можно разрабатывать приложения под Windows Phone (при этом, конечно, ваш ПК должен быть связан с интернетом).
Обе версии интегрированных средств разработки Visual Studio предоставляют разработчику полноценные возможности по отладке на устройстве и эмуляторе такие же, какие есть у разработчиков приложений под настольную версию Windows.
Обратите внимание, что для того, чтобы отлаживаться на реальном устройстве, помимо собственно устройства и кабеля для подключения его к компьютеру разработчика, на компьютере со средствами разработки необходимо иметь установленное ПО Zune (http://zune.net). Также перед развертыванием приложения и отладкой, требуется зарегистрировать устройство или «разлочить», с использованием утилиты Windows Phone Developer Registration Tool, которая устанавливается вместе с Windows Phone SDK.
2.1 Windows Phone SDK
Этот пакет содержит всё необходимое, для того, чтобы начать разработку. На момент написания этого методического пособия, последняя версия инструментария доступна в версии Windows Phone SDK 7.1 Release Candidate в лицензии «Go Live» с возможностью разрабатывать свои приложения и публиковать их в Windows Phone Marketplace.
Windows Phone SDK 7.1 Release Candidate содержит следующие компоненты:
Windows Phone SDK 7.1
Windows Phone Emulator
Windows Phone SDK 7.1 Assemblies
Silverlight 4 SDK and DRT
Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0
Expression Blend SDK for Windows Phone 7
Expression Blend SDK for Windows Phone OS 7.1
WCF Data Services Client for Windows Phone
Microsoft Advertising SDK for Windows Phone
Если у вас не установлена версия Visual Studio 2010 редакции Professional, Expression Bland 4 или XNA Game Studio 4.0, в процессе установки также будут скачаны и установлены:
Visual Studio 2010 Express for Windows Phone
Expression Blend 4 for Windows Phone
XNA Game Studio 4.0
2.2 Expression Blend и Expression Blend for Windows Phone
Expression Blend это интерактивный визуальный дизайнер для XAML, технологии описания интерфейса для приложений Silverlight и Windows Presentation Foundation (WPF). Это отличное средство разработки, которое позволяет просто манипулировать слоями, анимацией, стилями и шаблонами. Это базовое средство разработки на XAML. Собственно программа Expression Blend не бесплатна, однако, специальная версия для создания дизайнов приложений под Windows Phone, под названием Expression Blend 4 for Windows Phone доступна для разработчиков бесплатно. Она закачается и установится в процессе установки Windows Phone SDK, если у вас на компьютере нет полной версии Expression Blend. Подробнее об Expression Blend 4 можно прочитать на MSDN: http://msdn.microsoft.com/ru-ru/library/cc296227.aspx