Файл: Критерии выбора средств разработки мобильных приложений.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 22.04.2023

Просмотров: 164

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

В июне 2011 Appcelerator выпустил Titanium Studio и Titanium Mobile 1.7. Titanium Studio – это открытая свободная IDE, построенная на базе Aptana Studio, которая, в свою очередь является средой веб-разработки, выполненной на базе Eclipse IDE. В апреле 2010-го Appcelerator расширил линейку продуктов, выпустив Titanium Tablet SDK. По факту, данный SDK полностью копирует существующее решение для iPhone, добавляя некоторые iPad’овские элементы управления (SplitView, Popover и т.д.). Первоначально была поддержка лишь iPad, но позже были также включены инструменты для работы с планшетами на базе Android.

Appcelerator, Inc. также предлагает облачные сервисы для сборки, развёртывания и тестирования приложений, разработанных на платформе Titanium. В 2011-м году компания выкупила фирму Aptana Inc., одного из ведущих разработчиков в области Open-Source решений для создания веб-приложений. Теперь Aptana Studio принадлежит Appcelerator, Inc. [24]

Также стоит отметить, что разработка на iPhone возможна только на Mac OS.

Основное отличие от главного конкурента Titanium – продуктов Phonegap/Cordova – заключается в том, что там создаётся родное приложение, в котором перенаправляются вызовы на html-страницы, где уже и выполняется PHP/Javascript код. В нашем же случае, приложение полностью пишется на веб-языках, которые уже впоследствии интерпретируются (кросс-компилируется) на конечном устройстве.

Отметим, наконец, что бесплатная лицензия подразумевает, что в начале исполнения программы на мобильном устройстве появится значок Appceleration Titanium Mobile.

Можно разрабатывать приложения на Titanium бесплатно, однако за поддержку и дополнительные модули придется заплатить (от $49 в месяц). Цена некоторых сторонних модулей доходит до $120 за год.

Общие характеристики

Выделим основные возможности Appcelerator Titanium (согласно официальному заявлению разработчиков):

  • Поддержка всех базовых инструментов веб-разработки (HTML, CSS, JavaScript) на всех платформах.
  • Поддержка таких языков, как PHP, Python и Ruby для desktop-приложений
  • Имеется поддержка популярных JavaScript-фреймворков, включая jQuery, YUI, MooTools, Scriptaculous и др.
  • Платформенно-независимый API предоставляет доступ к нативным UI-компонентам: панелям, меню, диалоговым окнам, сообщениям и т.д., а также функциональности операционной системы: звукам, работе с сетью, базам данных, файловой системе.
  • API для нативных мобильных возможностей: акселерометр, карты, геопозиционирование.
  • Расширения на базе открытых лицензий и интерфейсов, предоставляющие разработчикам возможность интеграции дополнительных языков, медиа-кодеков и устройство-зависимым функциям.

2.2 Мобильные платформы приложений PhoneGap

Разработчикам мобильных приложений приходится непросто, разрабатывая код под каждую ОС, разбираясь с SDK, компиляторами и эмуляторами. [20]

PhoneGap появился в iPhoneDevCamp в 2008 году, и создан он был просто потому, что в этом подразделении по сравнению с веб-разработчиками было не так много разработчиков Objective-C. Задача заключалась в том, чтобы объединить среду разработки, которая позволила бы веб-разработчикам использовать HTML, CSS и javascript для разработки приложений, которые могли бы использовать родной функционал мобильных устройств (камеру, дисковое пространство и геолокацию). Изначально разработанный для работы с iPhone, проект PhoneGap стремительно разрастался и со временем приобрел поддержку Android. Теперь, когда прошло уже около 4 лет, PhoneGap представляет собой один из наиболее распространенных наборов инструментов для разработки мобильных приложений, которые поддерживаются большим диапазоном устройств, включая устройства на базе iOS, Android, Blackberry, Symbian, webOS.

PhoneGap — это платформа с открытым исходным кодом от компании Nitobi (в настоящее время купленная Adobe), которая позволят разрабатывать приложения для нескольких мобильных платформ, используя стандартные веб-технологии. Создатели кроссплатформенного фреймворка PhoneGap постарались упростить задачу: позиционируя себя как единственный open source мобильный фреймворк с поддержкой шести мобильных платформ. [23]

В настоящее время поддерживаются такие операционные системы (ОС) как: Android, iOs, Symbian, Windows Phone, Bada, WebOS.

Написание приложения ведется на JavaScript с использованием HTML и CSS для разметки. Вы пишете мобильное приложение как обычный сайт или веб-сервис.

Платформа PhoneGap расширяет API браузера и добавляет следующие возможности: доступ к акселометру, доступ к камере, доступ к компасу, доступ к списку контактов, запись и прослушивание аудио файлов, предоставляет доступ к файловой системе, позволяет работать с разными HTML5 хранилищами localStorage, Web SQL и т.п а также позволяет безболезненно обращаться к любому кросс-доменному адресу.

Для того, чтобы использовать PhoneGap необходимо скачать с официального сайта последнюю версию PhoneGap (на момент написания статьи она была 2.1.0) и указать в среде разработки расположение библиотеки. Так же необходимо подключить JavaScript файл, который расположен в папке вместе с библиотекой под нужную платформу.


С помощью PhoneGap Build - онлайновый конвертер из HTML 5. Нужно загрузить приложение на html/js/css — и на выходе получаете готовый бинарный файл для Apple App Store, Android Marketplace, Palm, Symbian или BlackBerry.

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

Интерфейс в PhoneGap приложениях представляет собой web-браузер растянутый на всю ширину и высоту экрана устройства, который отрисовывает HTML контент без оконного оформления.

При разработке PhoneGap приложений создаётся навигация, элементы интерфейса, контент используя HTML, CSS.

Браузер используемый в PhoneGap приложениях идентичен таковому в нативных мобильных приложениях. В iOS это Objective-C UIWebView класс; в Android это android.webkit.WebView.

PhoneGap API

У PhoneGap есть свой Интерфейс программирования приложений, позволяющий получить доступ напрямую к операционной системе устройства.

В дополнение к функционалу «из коробки», также можно используя механизм PhoneGap’s JavaScript-native для написания нативных плагинов. Phonegap плагины позволяют писать свои нативные классы и соответственно JS интерфейс для работы внутри PhoneGap приложений. [27]

Приложения PhoneGap разработаны с использованием HTML, CSS и JavaScript, однако конечный продукт приложения PhoneGap является бинарным архивом приложения, которое может распространяться через стандартные экосистем приложений.

PhoneGap приложения разрабатываются с использованием HTML, CSS и JS, однако конечный продукт – это бинарный архив, который может распространятся как стандартное приложение в своей системе.

Для iOS приложений это IPA файл, для Android это APK файл, для Windows Phone это XAP файл и так далее. Это те же самые нативные форматы упаковки приложений, которые могут распространятся по соответствующим системам (ITunes Store, Android Market, Amazon Market, BlackBerry App World, Windows Phone Marketplace, и т.д.).

Специфика архитектуры приложений отличается от случая к случаю, однако зачастую имеет схожую основу. PhoneGap приложения выступают как клиенты для взаимодействия с пользователем. PhoneGap клиенты взаимодействуют с сервером приложений для получения данных. Сервер приложений использует бизнес логику для связи с back-end хранилищем.

Серверное приложение это обычный web сервер (Apache, IIS, etc…) выполняющий скрипты написанные на серверном языке программирования такие как ColdFusion, Hava, .NET, PHP и так далее. PhoneGap может работать с любым сервеным приложением используя стандартные web протоколы. Серверное приложение обрабатывая запросы, рассчитывает и генерирует и возвращает или сохраняет данные в специальных хранилищах – это может быть реляционная база данных или любой другой способах хранения данных.


Приложения PhoneGap как правило, не связываются напрямую с базой данных; связи проходит через сервер приложений. Клиент-серверная связь может быть быть основана на стандартных HTTP сервисах, REST-FUL XML сервисах, JSON, или SOAP (или WebSockets если операционная система поддерживает это). Это те же самые методы, которые можно использовать в приложении для настольных компьютеров на основе браузеров AJAX).

Клиентская часть обычно использует одностраничную модель приложения, где логика приложения внутри HTML страницы. Страница в таких приложениях никогда не выгружается из памяти. Данные отображаются путём манипуляция с HTML DOM, данные получаются от сервера приложений используя AJAX технологию.

Многостраничная модель тоже поддерживается, но не рекомендуется т.к. вы теряете из памяти переменные когда страница перезагружается.

Достоинства разработки под PhoneGap

  • Очень просто реализовать совместную разработку приложения.
  • Написание кода ведется на HTML, Java Script, CSS с возможностью использования сторонних библиотек.
  • Поддержка кроссплатформенности (в настоящее время 6 платформ);
  • Отладка приложений с помощью браузера.
  • Возможность конвертации приложения под все необходимые платформы с помощью PhoneGap.

Недостатки разработки под PhoneGap

  • Приложения не поддерживают многопоточность.
  • Проблемная реализация длинных списков (более 1000).
  • Не все приложения могут быть оформлены как Web-приложения.
  • Обращение к аппаратным частям мобильного устройства ведется по-разному, что может вызывать неожиданный эффект.
  • Сложность настройки программной среды для написания приложений под PhoneGap.

Таблица 1

Сравнение Appcelerator и PhoneGap

Appcelerator

PhoneGap

Поддерживаемые платформы

Android

Да

Да

BlackBerry

Планируется

Да

iOS (iPhone/iPad)

Да

Да

Symbian

Нет

Да

WebOS

Нет

Да

Windows Phone 7

Нет

Да

Поддерживаемые ОС для разработки

Mac

Да

Да

Linux

Да*

Да*

Windows

Да*

Да*

Особенности фреймворка

Язык разработки

Javascript, Native

HTML/JavaScript, Native

возможно Python, Ruby, PHP

Доступ к нативному коду

Да

Да

Нативный вид

Да

Нет


*кроме iOs
**многие возможности пока не поддерживаются, но скоро обещают добавить

2.3 Мобильные платформы приложений iBuildApp

iBuildApp, материнская компания для Inforesource, основанная в 2010 года, предоставляет решения для создания и поддержки мобильных приложений для компаний из списка Fortune 2000, малого бизнеса, благотворительных организаций и медиа компаний. iBuildApp передает Inforesource технологию в виде автоматизированного движка для создания мобильных приложений «Сделай-Сам» что не требует навыков программирования. Inforesource планирует создать платформу для мультимедийных публикаций (видео, аудио, изображения, тексты) что хранятся в разных форматах в облачном хранилище Amazon. Все преобразования мультимедийного контента выполняются на лету для планшетов (iPad/Android Tablets/Kindle Fire) и компьютеров Главный офис компании находится в городе Фостер Сити, Калифорния, США. Команда разработчиков располагается в городe Владимир (10 человек). На текущий момент iBuildApp достиг 2 500 000 уникальных посетителей в месяц 60,000 опубликованных приложений (7-8% всего рынка apps). [22]

iBuildApp — это новый интернет-сервис, предоставляющий пользователям возможность создания, тестирования, отслеживания и обновления мобильных приложений для таких мобильных устройств, как iPhone/Android и iPad. В планах создателей сервиса возможность работы создаваемых пользователями приложений и на ОС Blackberry.

Он позволит каждому создать в новом приложении текст, встроить в него RSS-ленту, картинки, аудио- и видеоинформацию и т. д. При этом создатели говорят о простоте и доступной цене его использования.

 Здесь вообще без навыков программирования можно быстро создать себе мобильное приложение, которые будет нативным и сможет работать на iPhone, Android и Windows Phone. В конструкторе есть много виджетов для создания разного функционала, есть готовые решения для бизнеса (кафе, религия, отели, журналы, радио).

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

Создатели iBuildApp специально разработали такой проект, который будет понятен даже для неопытного пользователя. Простой интерфейс и удобные инструменты — это гарантия того, что все, кто будет пользоваться созданным с его помощью приложением, будут поражены тем, насколько быстро и просто можно получить доступ к вновь созданному продукту. Им трудно будет поверить в то, что подобное приложение можно создать всего за несколько минут, без каких-либо денежных вложений.