Тема: АВТОМАТИЗАЦИЯ ПРОЦЕССА РАЗРАБОТКИ ПОЛЬЗОВАТЕЛЬСКИХ ИНТЕРФЕЙСОВ НАТИВНЫХ ANDROID-ПРИЛОЖЕНИЙ
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1 ТРЕБОВАНИЯ К СТРУКТУРЕ ПРОЕКТА 5
1.1 Анализ известных решений проблемы 5
1.2 Элементы интерфейса Android-приложений 6
1.3 Требования к структуре sketch-проекта 10
2 РЕАЛИЗАЦИЯ ПРОГРАММНОГО ИНСТРУМЕНТА 14
2.1 Проектирование программного решения 14
2.2 Принцип работы алгоритма 18
2.3 Чтение файлов исходного sketch-проекта 20
2.4 Анализ макетов экранов 20
2.5 Хранение полученных данных 23
3 ОПИСАНИЕ РАБОТЫ ПРОГРАММЫ 25
ЗАКЛЮЧЕНИЕ 30
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 31
ПРИЛОЖЕНИЕ А Исходный код программы 32
ПРИЛОЖЕНИЕ Б Исходный json-файл тестового экрана
📖 Введение
• анализ требований и формулирование технического задания;
• разработка дизайна и пользовательского интерфейса;
• вёрстка макетов пользовательского интерфейса;
• написание кода и тестирование.
Автоматизация этапов жизненного цикла разработки мобильных приложений, требующих выполнения шаблонных действий, позволит значительно сократить затраты на создание программного продукта.
Рассмотрим каждый из описанных выше этапов жизненного цикла.
Процесс написания технического задания не может быть автоматизирован на данном этапе развития технологий, потому что требует непосредственного обсуждения всех вопросов, касающихся проекта, и формирования требований на основе проблематики, озвученной заказчиком. Процессы написания кода и создания дизайна пользовательских интерфейсов на текущий момент также не поддаются полной автоматизации, поскольку данные процессы сопровождаются большим количеством нерешенных вопросов. Однако среди озвученных выше основных этапов процесса разработки мобильного приложения указан один, автоматизация действий которого позволит в значительной степени сократить трудозатраты на разработку - это написание кода пользовательского интерфейса. Сейчас процесс создания макетов заключается в том, что разработчик по предоставленному ему изображению дизайна пишет шаблонный код для каждого элемента интерфейса.
В данный момент существует множество программных решений, которые могут с легкостью распознавать образы на изображении [2]. Поэтому если обучить такую сеть на данных с изображением элементов пользовательского интерфейса, то она сможет понять, что изображено на очередной картинке с дизайном экрана, разработанным дизайнером, и сверстать макет экрана, правда точность распознавания элементов нейронной сетью будет недостаточно высока, что может вылиться в неправильно сверстанный экран.
Но если углубиться в процесс разработки мобильных приложений, то можно узнать, что, согласно официальному сайту программы Sketch [3], у мобильных дизайнеров пользуется большой популярностью программное обеспечение под названием Sketch. Начиная с версии 43 из sketch-проекта можно получить JSON-файлы, в которых содержится вся информация о дизайне макетов всех экранов данного проекта, что делает возможной автоматизацию процесса создания пользовательских интерфейсов мобильных приложений путём анализа и обработки данных JSON-файлов.
Целью данной дипломной работы является разработка программного инструмента для генерации кода пользовательского интерфейса нативных мобильных приложений для операционной системы Android.
Задачи, выполнение которых необходимо для достижения данной цели:
• определение перечня элементов, которые поддаются генерации программой и разработка требований к структуре sketch-проекта;
• разработка алгоритма для генерации кода пользовательского интерфейса на основе данных графического редактора;
• разработка графического интерфейса для взаимодействия пользователя с программой.
✅ Заключение
Задачи, выполненные в рамках работы:
• разработаны технические требования и требования к структуре sketch-проекта;
• разработан алгоритм генерации кода макетов UI по данным графического редактора;
• создан программный инструмент, реализующий генерацию файлов пользовательских интерфейсов для дальнейшего использования в Android-проектах.
Разработанный программный инструмент позволит Android-разработчикам сократить время на создание пользовательских интерфейсов по макетам графического редактора, что, в свою очередь, сократит общее время разработки программного продукта для операционной системы Android.
В дальнейшем планируется расширить список генерируемых элементов, добавить генерацию паттернов MVP/MVVM и выложить проект в открытый доступ, что даст возможность сторонним разработчикам кастомизировать алгоритм под свои требования.



