Тип работы:
Предмет:
Язык работы:


РАЗРАБОТКА ПРОГРАММНОГО ИНСТРУМЕНТА ДЛЯ АВТОМАТИЧЕСКОЙ ГЕНЕРАЦИИ КОДА ПОЛЬЗОВАТЕЛЬСКИХ ИНТЕРФЕЙСОВ ANDROID-ПРИЛОЖЕНИЙ

Работа №32874

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы43
Год сдачи2019
Стоимость4900 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
252
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 3
1 КОНЦЕПЦИЯ ПРОГРАММНОГО РЕШЕНИЯ 5
1.1 Описание проекта решения 5
1.2 Обзор распознаваемых элементов интерфейса 8
1.3 Архитектура программного решения 12
2 РАСПОЗНАВАНИЕ ЭЛЕМЕНТОВ ИНТЕРФЕЙСА 14
2.1 Выбор подхода и модели распознавания 14
2.2 Подготовка и обучение модели 17
2.3 Постобработка результатов распознавания 20
3 СОЗДАНИЕ АДАПТИВНОЙ ВЁРСТКИ 23
3.1 Выбор разметки 23
3.2 Алгоритм размещения 24
3.3 Проблема ложных ограничений 27
4 СТИЛИЗАЦИЯ ЭЛЕМЕНТОВ ИНТЕРФЕЙСА 28
5 ГЕНЕРАЦИЯ XML-КОДА 30
ЗАКЛЮЧЕНИЕ 32
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 33
ПРИЛОЖЕНИЕ

Современный процесс разработки Android-приложения состоит из нескольких немаловажных этапов. Неотъемлемой частью разработки мобильного приложения является создание пользовательского интерфейса, так как отношение пользователя к приложению зависит первоначально от внешнего вида UI-интерфейса. Ошибки в пользовательском интерфейсе могут привести к снижению производительности приложения, а также к отказу пользователей от работы с ним [1].
По данным замеров, проведённых в существующем приложении компании FlatStack, написание xml-кода пользовательского интерфейса занимает по 120-180 минут на каждую новую страницу сложности ниже среднего, без учёта функционала и бизнес-логики. В среднем, в популярных приложениях, таких как Instagram, Telegram, Vkontakte и так далее, разработчику необходимо создать от 15 до 20 и более окон на одно приложение, что в сумме займёт более 40 часов, при условии, что все экраны имеют сложность ниже среднего. Стоит заметить, что это время прямо пропорционально сложности каждого окна приложения.
На текущий момент процесс создания вёрстки является стандартным и состоит в построении в xml-формате зарезервированных библиотекой ключевых слов и параметров к ним на основе дизайна, который в основном находится на платформах Sketch, Figma и Adobe XD [2].
Все необходимые для разработки пользовательских интерфейсов данные описаны в файлах графических редакторов, однако разработчику приходится тратить более часа, в зависимости от количества элементов и сложности их размещения, на ручной перенос данных одного экрана в xml-формат, понятный для системы Android. Время разработки сокращается при наличии инструмента, создающего пользовательский интерфейс на основе дизайна в автоматическом режиме.
Целью данной работы является создание инструмента, позволяющего на основе дизайна редактора Figma автоматически генерировать xml-код пользовательского интерфейса для Android-приложений.
Были поставлены следующие задачи, выполнение которых необходимо для достижения цели:
• реализовать сбор данных, описывающих пользовательский интерфейс;
• обучить модель нейронной сети для корректного распознавания элементов дизайна;
• разработать алгоритм размещения распознанных элементов в вёрстке, адаптированной для экранов разного размера, с минимальным уровнем вложенности элементов;
• разработать модуль стилизации распознанных объектов на основе дизайна;
• реализовать генерацию xml-файла, описывающего вёрстку пользовательского интерфейса Android-приложений.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В результате выполнения данной дипломной работы был реализован программный инструмент, позволяющий автоматически генерировать xml-код пользовательского интерфейса для Android-приложений на основе дизайна сервиса Figma.
Для достижения поставленной цели были выполнены следующие задачи:
• реализован сбор данных, описывающих пользовательский интерфейс;
• обучена модель нейронной сети для корректного распознавания элементов дизайна;
• разработан алгоритм размещения распознанных элементов в вёрстке, адаптированной для экранов разного размера, с минимальным уровнем вложенности элементов;
• разработан модуль стилизации распознанных объектов на основе дизайна;
• реализована генерация xml-файла, описывающего вёрстку пользовательского интерфейса Android-приложений.
Разработанное программное решение позволит сократить трудозатраты на реализацию пользовательских интерфейсов Android-приложений.
Результаты выполнения данной выпускной квалификационной работы опубликованы в открытом доступе в репозитории GitLab и доступны по ссылке: http ://gititis.kpfu.ru/ILMAZ 13/EasyXML.



1. Smith, J. Guidelines for designing user interface software [Text] / J. Smith,
J. Mosier. - Citeseer, 1986. - 384 p.
2. Sketch vs Figma, Adobe XD, And Other UI Design Applications [Электронный ресурс]. - URL: https://www.smashingmagazine.com/ 2019/04/sketch-figma-adobe-xd-ui-design-applications (дата обращения:
28.04.2019) .
3. Developer Docs // Figma API [Электронный ресурс]. - URL: https://api.figma.com (дата обращения: 18.10.2018).
4. API reference // Android Developers [Электронный ресурс]. - URL: https://developer.android.com/reference (дата обращения: 01.02.2019).
5. How to Retrain an Image Classifier for New Categories // Tensorflow [Электронный ресурс]. - URL: https://www.tensorflow.org/hub/tutorials/ image retraining (дата обращения: 11.04.2019).
6. How To Train an Object Detection Classifier // EdjeElectronics
[Электронный ресурс]. - URL: https://github.com/EdjeElectronics/
TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windo ws-10/blob/master/README.md (дата обращения: 11.05.2019).
7. TensorFlow-Slim image classification model library [Электронный
ресурс]. - URL: https://github.com/tensorflow/models/tree/master/
research/slim#pre-trained-models (дата обращения: 11.04.2019).
8. Labelling [Электронный ресурс]. - URL: https://github.com/tzutalin/ labelling (дата обращения 20.05.2019).
9. Configuring the Object Detection Training Pipeline [Электронный ресурс].
- URL: https://github.com/tensorflow/models/blob/master/
research/obj ectdetection/g3 doc/configuring J obs .md (дата обращения
20.05.2019) .
10. Build a Responsive UI with ConstraintLayout 11 Android Developers [Электронный ресурс]. - URL: https://developer.android.com/training/ constraint-layout (дата обращения 20.05.2019).


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ