Симахина Лидия Сергеевна Портирование пользовательского интерфейса на мобильные платформы на примере приложения для электронной валютной торговли магистерская диссертация

Главная страница
Контакты

    Главная страница


Симахина Лидия Сергеевна Портирование пользовательского интерфейса на мобильные платформы на примере приложения для электронной валютной торговли магистерская диссертация



страница1/14
Дата24.10.2017
Размер1,44 Mb.


  1   2   3   4   5   6   7   8   9   ...   14
МИНОБРНАУКИ РОССИИ

Томский государственный университет

Факультет информатики

Кафедра программной инженерии

УДК 004.514

ДОПУСТИТЬ К ЗАЩИТЕ В ГАК

Зав. кафедрой, профессор, д.ф.-м.н.

________________ О.А.Змеев

«___» ___________ 2013 г.


Симахина Лидия Сергеевна


Портирование пользовательского интерфейса на мобильные платформы на примере приложения для электронной валютной торговли
МАГИСТЕРСКАЯ ДИССЕРТАЦИЯ

на соискание степени магистра

по направлению подготовки

230700 «Прикладная информатика»

Руководитель ВКР, заведующий кафедрой программной инженерии

профессор, д.ф.-м.н.

____________ О.А.Змеев



подпись

«_____»___________ 2013 г.

Автор работы

студент группы № 1418

_____________ Л.С.Симахина

подпись

Электронная версия магистерской диссертации Администратор электронной

помещена в электронную библиотеку. библиотеки факультета

_____________ Е.Н.Якунина



подпись

Томск 2013



Реферат
Выпускная квалификационная работа магистра 50 с., 20 рис., 3 табл., 16 источников.
портирование, МОБИЛЬНОЕ ПРИЛОЖЕНИЕ, Android, ios, adobe flash, пользовательский интерфейс, НАТИВНАЯ РАЗработка, электронная валютная торговля.
Объект исследования - процесс портирования пользовательского интерфейса на мобильные платформы Android и iOS.
Цель работы: провести анализ SDK, предоставляемых разработчиками платформ Android и iOS, провести процесс портирования элементов пользовательского интерфейса из RIA-приложения на платформе Adobe Flash в мобильные приложения на платформах Android и iOS.
Метод проведения работы: теоретический и экспериментальный.
Проведено портирование элементов пользовательского интерфейса приложения для платформы Adobe Flash в приложения для платформ iOS и Android. Проведен анализ предоставляемых создателями платформ SDK, выявлены соответствия компонентов пользовательского интерфейса. Проведен анализ платформ и сформулированы перечень особенностей каждой платформы и рекомендации для начинающих разработчиков.
Результаты работы внедрены в ООО «Е-Трейд Софт».


Содержание


Введение 5

1 Разработка приложений для мобильных платформ 7

1.1 Клиент для электронной валютной торговли 7

1.2 Нативная разработка приложений 9

1.3 Кроссплатформенная разработка приложений 10

1.4 Использование возможностей Adobe Air 11

1.5 Выбор метода разработки для нескольких платформ 12

2 Особенности интерфейса на платформе Adobe Flash 15

2.1 Adobe Flex 15

2.2 Клиент для электронной валютной торговли 17

3 Портирование интерфейса на платформу Android 21

3.1 Специфика разработки приложений для платформы Android 21

3.2 Изменение структуры пользовательского интерфейса приложения 24

3.3 Портирование основных элементов интерфейса 25

3.4 Реализация компонента для отображения плашек 26

3.5 Реализация компонента для ввода числовых данных 28

3.6 Портирование компонента для отображения графиков 30

3.7 Шаблон Наблюдатель для получения уведомлений от контроллера 32

4 Портирование интерфейса на платформу iOS 34

4.1 Специфика разработки приложений для платформы iOS 34

4.2 Изменение структуры пользовательского интерфейса приложения 36

4.3 Реализация компонента для обработки жеста swipe 37

4.4 Портирование основных элементов интерфейса 38

4.5 Реализация компонента для отображения сетки 39

4.6 Реализация компонента для отображения плашек 40

4.7 Реализация компонента для ввода числовых данных 41

4.8 Портирование компонента для отображения графиков 41

4.9 Получение уведомлений от контроллера 42

5 Сравнение приложений для различных платформ 43

Заключение 47

Список использованных источников 48

API – (англ. application programming interface) набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах.

SDK – (англ. software development kit) — комплект средств разработки, который позволяет создавать приложения для определённой операционной системы.

Валютная пара – сокращенная запись отношения курсов двух валют, одна из которых является базовой, а вторая играет роль котируемой.

Кастомизация – дополнительная настройка внешнего вида компонента (изменение цвета, размера, шрифтов и др.).

Котировка – текущая цена валютной пары.

Нативная разработка – разработка приложений с применением средств, предоставляемых производителем целевой платформы.

Нативное приложение – приложение, разработанное с помощью средств, предоставляемых разработчиками целевой платформы.

Ордер – распоряжение на продажу/покупку определенной валютной пары по определенной цене.

Платформа – программный комплекс, служащий основой для запуска приложений.

Трейдер – торговец на валютном рынке.




Введение

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

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

В 2011 году в рамках первого жизненного цикла автором данной работы было разработано клиентское приложение для электронной валютной торговли. В качестве платформы разработки была использована Adobe Flash. В рамках второго жизненного цикла было решено расширить перечень поддерживаемых платформ. В качестве целевых были выбраны мобильные платформы iOS и Android, как наиболее популярные на рынке мобильных устройств.

Создание мобильной версии клиентского flash-приложения очень актуально не только как расширение перечня поддерживаемых платформ, а значит и целевой аудитории. В связи с прекращением компанией Adobe поддержки технологии Flash для мобильных платформ в сети Интернет всё чаще появляются обсуждения и заметки о бесперспективности данной технологии. Поэтому необходимо переносить существующие flash-приложения на другие платформы, хотя бы с целью сохранения существующей пользовательской аудитории. В случае с мобильными платформами, такая «миграция» способствует расширению рынка и повышению популярности приложения.

Анализ различных источников в сети Интернет показал, что проблема переноса приложения с платформы Adobe Flash на мобильные платформы очень актуальна, но совершенно не исследована. Единственное предлагаемое решение – использование технологии Adobe AIR. Такой подход практически не требует времени и средств, поэтому прекрасно подходит для небольших не требовательных к ресурсам приложений. Однако для тех приложений, для которых быстродействие выходит на первый план, данная технология не подходит.

Проблема создания нативных приложений для мобильных платформ на основе существующих приложений для ПК мало исследована. Кроме того, очень трудно найти какие-либо рекомендации для разработчиков, переходящих на мобильную разработку с Adobe Flash или любой другой платформы. Новую платформу приходится изучать «с нуля», не опираясь на предыдущий опыт, что требует гораздо больше времени. Исключением является Windows Phone, создатели которой предлагают инструкции по портированию приложений с других мобильных платформ.

Выделяют несколько методов создания приложений для мобильных платформ Android и iOS. Для разработки клиентского приложения для электронной валютной торговли выбран нативный метод. Детали и причины выбора данного метода описаны в первом разделе данной работы.

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

Анализ SDK, предоставляемых создателями мобильных платформ для разработки приложений, позволит выявить особенности составных компонентов SDK для разных платформ, определить перечень предоставляемых компонентов для разработки интерфейсов. Это позволит найти соответствия между элементами интерфейса и разработать методику портирования пользовательского интерфейса приложений для платформы Adobe Flash на мобильные устройства.

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

Целью данной выпускной квалификационной работы магистра является анализ SDK, предоставляемых разработчиками мобильных платформ Android и iOS и портирование элементов пользовательского интерфейса приложения для платформы Adobe Flash на данные мобильные платформы.



1 Разработка приложений для мобильных платформ

1.1 Клиент для электронной валютной торговли

Описание проблемы и формулировку цели и задач данной работы необходимо начать с описания предметной области. Согласно определению, данному в экономическом словаре [1]:

«Валютный рынок - сфера, где совершается купля-продажа иностранной валюты на основе спроса и предложения. Делится на биржевой и внебиржевой (межбанковский).»

В качестве целевого валютного рынка был выбран внебиржевой валютный рынок Форекс. Пользователи сети Интернет могут осуществлять валютные операции на данном рынке через брокеров и другие институты валютного рынка. Пользователь с помощью приложения для торговли, предоставляемого брокером (торгового представителя, совершающего операции по поручению клиента), управляет ордерами на продажу и покупку различных валют. Разница в цене валюты при открытии и закрытии ордера является прибылью или убытком пользователя.

Приложение для электронной валютной торговли должно удовлетворять следующим требованиям:

а) высокая производительность;

б) расширяемость;

в) малая потребность в ресурсах;

г) высокая скорость передачи данных.

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

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

В рамках первого жизненного цикла автором данной работы было создано RIA (Rich Internet Application)-приложение для электронной валютной торговли. В качестве платформы для разработки использовалась Adobe Flash. Средой разработки послужил программный продукт от компании Adobe для создания кроссплатформенных интернет-приложений - Adobe Flash Builder 4.5. Проблемы выбора данной платформы для разработки в данной работе не рассматриваются.



Flash-приложение имеет две версии: веб-приложение, исполняемое плагином Adobe Flash Player, встроенным в браузер и настольное приложение, запускаемое в рамках среды Adobe AIR, установленной на ПК.

Диаграмма вариантов использования для Flash-приложения представлена на рисунке 1.

Рисунок 1 - Диаграмма вариантов использования для приложения Flash-приложения.

Развитие мобильных технологий повлекло за собой необходимость разработки мобильной версии клиентского приложения. Рынок мобильных платформ разнообразен, из-за чего возникает необходимость выбора целевой платформы для разработки.

Целевой аудиторией разрабатываемого приложения являются начинающие и опытные трейдеры. Исследований популярности мобильных платформ среди трейдеров найдено не было, однако, анализ Интернет-форумов, таких как MT5 Forum [2] показал, что наиболее популярными среди представителей целевой аудитории являются смартфоны и планшеты со встроенными операционными системами iOS и Android.

Различными компаниями ежегодно проводятся многочисленные исследования по вопросу распространения мобильных платформ на рынке, однако полученные ими данные различаются. Согласно исследованиям компании NetApplications [3], наиболее распространенными операционными системами для мобильных устройств (смартфонов и планшетов) по итогам 2012 года являются iOS (61%) и Android (22%). По данным исследований корпорации IDC [4], доля устройств с операционной системой Android составляет 75%, iOS – 14,9%. Общим в большинстве исследований является тот факт, что Android и iOS - наиболее распространенные. Другие операционные системы, такие как Symbian и Windows Phone 7 существенно отстают от своих более успешных конкурентов.

На основании вышеперечисленных фактов в качестве целевых для разработки мобильных приложений были выбраны платформы Android и iOS. Таким образом, в рамках второго жизненного цикла приложения будет расширен перечень поддерживаемых платформ.

Авторы статьи [5], посвященной методам разработки мобильных приложений, выделяют следующие методы:

а) нативная разработка,

б) веб-разработка,

г) гибридная разработка.

Кроме того, возможности платформы Adobe Flash, на которой разработано исходное приложение, позволяют генерировать приложения для целевых мобильных платформ.

Рассмотрим каждый метод подробнее.



  1   2   3   4   5   6   7   8   9   ...   14

  • Введение
  • 1 Разработка приложений для мобильных платформ