Реферат 2
Введение 5
1. Анализ предметной области 6
1.1. Постановка задачи 6
1.2. Актуальность 6
1.3. Обзор аналогов 8
1.4. Стек технологий для реализации приложения 10
1.4.1. Анализ требований 10
1.4.2. Выбор актуального метода разработки 10
1.4.3. React Native 13
1.4.4. React Native Navigation от Wix 15
1.4.5. React Native Gesture Handler 16
1.4.6. Firebase 17
1.4.7. Realm база данных 18
2. Реализация мобильного приложения 19
2.1. Описание работы приложения 19
2.2. Особенности разработки интерфейса 22
2.2.1. Основные понятия для построения интерфейса 22
2.2.2. Реализация интерфейса главного экрана 26
2.2.3. Реализация интерфейса бокового меню 28
2.2.4. Реализация интерфейса создания новой задачи 30
2.3. Реализация анимации 34
2.4. Работа с базой данных 36
2.5. Реализация серверной стороны 39
2.6. Тестирование приложения 41
2.6.1. Тестирование аутентификации 41
2.6.2. Тестирование создания задачи 43
2.6.3. Тестирование редактирования задачи 44
2.6.4. Тестирование взаимодействия потоков 45
3. Руководство пользователя 47
3.1. Авторизация 47
3.2. Главный экран 47
3.3. Работа с задачами 49
3.4. Особенности работы со списками 50
3.5. Доступные настройки 52
4. Безопасность жизнедеятельности 53
4.1. Влияние мобильных устройств на организм 53
4.2. Рекомендуемые меры предосторожности 53
Заключение 55
Список использованных источников 56
Приложение А. Листинги мобильного приложения 57
Приложение А.1. Components 57
Приложения А.2. Screens 103
Приложения А.3. Sources 130
Приложения А.4. Styles 137
Приложения А.5. Index.js 138
Приложение Б. Презентация 142
На момент выполнения данной выпускной квалификационной работы мобильная разработки продолжает активно развиваться, мобильные устройства на базе двух ключевых операционных систем (Android от Google и iOS от Apple) с каждым годом становятся все более распространёнными среди населения земли, их количество продолжает расти, хоть и не так стремительно, как это было раньше. По данным за начало 2020 года смартфонами владеет 45% населения Земли, в развитых странах Европы и Америки этот показатель достигает 80%. Мобильные устройства играют всё большую роль в жизни современного человека, предоставляют возможность получить необходимую информацию и удобным способом обработать ее, существенно упрощают многие процессы жизни.
При этом вместе с ростом количества мобильных устройств изменяются и подходы к разработке мобильных приложений для них. Если раньше для написания приложения приходилось вести разработку на определенных языках программирования под соответствующие платформы, то теперь все большую популярность набирает разработка на кроссплатформенных решениях, таких как React Native от Facebook, Flutter от Google, Xamarin от Microsoft.
Как мы можем видеть, в разработке кроссплатформенных приложений заинтересованы практически все основные IT-компании, задающие тренды разработки для мобильного рынка. Ведь у такого подхода несомненно есть основное ключевое преимущество - сокращение времени разработки, что в свою очередь позволяет существенно сэкономить при выходе на несколько платформ одновременно. И в дальнейшем использовать сэкономленные средства для развития продукта, основываясь на отзывах реальных пользователей.
В ходе выполнения выпускной квалификационной работы была проанализирована предметная область, исследованы ключевые аналоги по теме работы, изучены современные методы разработки программного обеспечения для мобильных устройств, разработано мобильное приложение под операционную систему Android «Смарт-органайзер» с использованием кроссплатформенного подхода и применением React Native. Полученный продукт, предназначен для эффективного планирования личного времени, формирования привычек. Программа прошла экспериментальную проверку на настоящем физическом устройстве. Применение разработанного приложения позволяет действенно бороться с негативными последствиями прокрастинации, способствует повышению продуктивности в течение дня.
В будущем планируется дополнить существующий функционал приложения, доработать релиз под другие платформы, такие как iOS и web. Также следует повысить стабильность и производительность работы.