ВВЕДЕНИЕ 3
1 ФОРМИРОВАНИЕ ПРАВИЛ 5
2 АРХИТЕКТУРА ПРОГРАММНОГО РЕШЕНИЯ 9
2.1 Общая структура 9
2.2 Программная библиотека для преобразования интерфейса 11
3 РЕАЛИЗАЦИЯ ПРОГРАММНОГО РЕШЕНИЯ 13
3.1 Парсинг существующей разметки 13
3.2 Реализация преобразования разметки 14
3.2.1 Базовый элемент 14
3.2.2 Кнопки 15
3.2.3 Текстовые элементы 16
3.2.4 Диалоги 17
3.2.5 Элементы списков 17
3.2.6 Поле ввода текста 18
3.2.7 Контейнеры содержимого 18
3.3 Плагин для Android Studio 19
4 ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ 22
ЗАКЛЮЧЕНИЕ 26
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 27
ПРИЛОЖЕНИЕ
Мощности мобильных устройств постоянно растут, а малый размер и вес создает из них сильного конкурента для стационарных компьютеров и ноутбуков. Круг задач, которые невыполнимы или вызывают трудности с помощью мобильного устройства, постепенно сужается, по прогнозам на 2018 год число пользователей мобильных устройств превысит количество пользователей стационарных устройств на 8% [1]. Компания “GSMA intelligence” предоставляет данные о 5 миллиардах уникальных пользователях мобильных устройств на конец 2017 года и прогнозирует рост до 6 миллиардов к 2025 году [2].
Рассмотрев динамику продаж смартфонов последних лет, можно заметить, что из-за долговечности современных устройств, число продаж смартфонов, в том числе на базе ОС Андроид, падает [3]. Однако это не оказывает влияния на количество приложений для мобильных устройств, количество скачиваний приложений, а также количество покупок, совершенных пользователями. Рынок мобильных приложений только продолжает расширяться. Прогнозируется рост расходов пользователей на неигровые приложения до 34 млрд долларов к 2021 году [4].
Для разработки конкурентоспособного приложения, ему требуется хорошо спроектированный и качественно выполненный пользовательский интерфейс. Следовательно проектирование, разработка и отладка интерфейса приложения являются одним из важных этапов разработки продукта, занимающим определенную долю времени в цикле разработки приложения, что приводит к поискам вариантов сокращения затрат на эту часть цикла разработки.
Целью данной дипломной работы является разработка плагина для среды разработки Android Studio, позволяющего сократить трудозатраты на разработку пользовательского интерфейса приложения путем автоматизации композиции и построения пользовательского интерфейса на основе созданных правил стандартизации интерфейса.
Для достижения поставленной цели процесс создания программного продукта был разбит на следующие этапы:
• Создание правил унификации и стандартизации интерфейсов мобильного приложения.
• Разработка библиотеки, способной в автоматическом режиме изменить интерфейс мобильного приложения по заданным правилам.
• Разработка плагина для среды разработки Android Studio, обеспечивающего доступ к файлам проекта и предоставляющего интерфейс для взаимодействия с библиотекой.
Результатом данной выпускной квалификационной работы является плагин для среды разработки Android Studio, позволяющий автоматизировать процесс создания интерфейсов мобильных приложений на базе операционной системы Android. Плагин находится в открытом доступе и доступен для скачивания из репозитория JetBrains Plugin Repository [10].
В рамках данной работы были выполнены следующие задачи:
• Составлены правила преобразования интерфейса.
• Создан инструмент, автоматически применяющий созданные правила к файлам разметки.
Созданное решение позволяет сократить время, затраченное на разработку интерфейса мобильного приложения, путем частичной автоматизации процесса верстки, что уменьшает временные затраты разработчика на этапе создания пользовательского интерфейса.
В дальнейшем планируется усовершенствовать работу плагина для более точного применения правил к элементам интерфейса, а также добавлять элементы, которые будут добавлены в будущих версиях платформы Android.