Целью данной выпускной квалификационной работы является разработка мобильного приложения для расширения словарного запаса
иностранных языков и удобного закрепления новых слов и фраз, предназначенного для различных устройств на базе Android. Для достижения поставленной цели необходимо решить следующие задачи:
1. проанализировать аналогичные существующие приложения;
2. определить функционал приложения;
3. выбрать инструменты для разработки;
4. спроектировать интерфейс системы и систему хранения данных;
5. разработать мобильное приложение;
6. протестировать мобильное приложение.
Основные преимущества использования мобильного приложения для расширения активного словарного запаса при изучении иностранных языков заключается в следующем:
- большая мобильность – пользователь может организовать свой учебный процесс в удобном месте и в удобное время;
- обеспечение непрерывности обучения;
- более простое соблюдение принципов выбранной системы обучения;
- наличие полезных сервисов, помогающих в обучении.
Для разработки приложения под операционную систему Android была использована интегрированная среда разработки Android Studio. В качестве языка программирования был выбран язык Kotlin. Для хранения данных приложения была выбрана база данных SQLite. В качестве сервиса переводчика был выбран Google Cloud Translation, а в качестве сервиса распознавания Google Cloud Vision. Для тестирования приложения использовались библиотеки Espresso и JUnit.
Выпускная квалификационная работы состоит из введения, четырех глав, заключения, списка используемых источников и приложения.
В введении содержится информация об актуальности работы, цели и поставленных задачах.
Первая глава «Анализ существующих мобильных приложений и постановка задачи на разработку» посвящена разбору выбранной темы, существующих решений для расширения словарного запаса, а также постановке требований и выбору инструментов для реализации проекта.
Вторая глава «Проектирование мобильного приложения для изучения иностранных языков» содержит в себе описание проектирования важных составляющих мобильного приложения: базы данных и пользовательского интерфейса.
Третья глава «Разработка мобильного приложения» включает в себя описание процесса разработки мобильного приложения, интегрирование систем перевода и добавления слов. Внимание в нём уделяется не только корректности работы программного обеспечения, но и пользовательскому интерфейсу: его простоте и удобству использования.
В четвертой главе «Тестирование приложения» описывается процесс тестирования разработанного приложения. Тестирование производится как вручную, так и при помощи автоматизированных тестов.
Введение........................................................................................................... 5
1. Анализ существующих мобильных приложений и постановка задачи на разработку 8
1.1 Обзор и характеристика существующих мобильных приложений для изучения иностранных языков....................................................................................... 8
1.2 Постановка задачи на разработку и выбор инструментов.................... 16
2. Проектирование мобильного приложения для изучения иностранных языков 21
2.1 Проектирование базы данных................................................................ 21
2.2 Проектирование пользовательского интерфейса................................... 25
3. Разработка мобильного приложения........................................................ 33
3.1 Разработка функционала приложения.................................................... 33
3.2 Внедрение систем перевода и добавления слов..................................... 40
3.3 Оптимизация работы приложения на различных устройствах............. 45
4. Тестирование приложения........................................................................ 49
4.1 Тестирование функциональных элементов мобильного приложения... 49
4.2 Тестирование алгоритма распознавания................................................ 51
Заключение.................................................................................................... 54
Список использованных источников............................................................ 58
Приложения
1. Голощапов А.Л. Google Android: программирование для мобильных устройств [Текст]. - 2 изд. - СПб.: БХВ-Петербург, 2012. - 448 с.: ил
2. Дейтел, П. Android для разработчиков [Текст]/ П. Дейтел, Х. Дейтел, Э. Дейтел. — СПб.: Питер, 2015. — 384 с.: ил. — «Библиотека программиста».
3. Жемеров Д., Kotlin в действии [Текст] / Исакова С. пер. с англ. Киселев А. Н.- М.: ДМК Пресс, 2018. - 402 с.: ил.
4. Куликов С. Тестирование программного обеспечения [Текст]/ С. Куликов. — Москва: EPAM Systems, 2017. — 298 с.
5. Лейтнер, С. Метод интервальных повторений [Текст] = So lernt man lernen/ С. Лейтнер ; пер. с немец. А. Г. Торицина. — Москва: Перо, 2019.
— 108 c.
6. Хашими С. Разработка приложений для Android [Текст]: практическое руководство/ Хашими С., Коматинени С., Маклин Д. - СПб.: Питер, 2011. - 736 с.:ил.
7. Как начать работать c Translate [Электронный ресурс]. – Режим доступа: https://cloud.yandex.ru/docs/translate/quickstart. Дата обращения: 11.11.2020.
8. Общие сведения о платформе Android [Электронный ресурс]. – Режим доступа: https://developer.android.com/guide. Дата обращения: 25.10.2020.
9. Основы JUnit [Электронный ресурс]. – Режим доступа: https://divancoder.ru/2017/06/junit-basic/. Дата обращения: 06.04.2021.
10. Что такое ER-диаграмма [Электронный ресурс]. – Режим доступа: https://www.lucidchart.com/pages/ru/erd-диаграмма. Дата обращения: 20.11.2020.
11. AnyChart for Android [Электронный ресурс]. – Режим доступа: https://github.com/AnyChart/AnyChart-Android. Дата обращения: 02.11.2020.
12. Create a Notification [Электронный ресурс]. – Режим доступа: https://developer.android.com/training/notify-user/build-notification. Дата обращения: 12.03.2021.
13. Data backup overview [Электронный ресурс]. – Режим доступа: https://developer.android.com/guide/topics/data/backup#:~:text=of%20the%20ring tone.-,Backup%20options,the%20user's%20Google%20Drive%20account. Дата обращения: 23.03.2021.
14. Floating Action Buttons [Электронный ресурс]. – Режим доступа: https://guides.codepath.com/android/floating-action-buttons. Дата обращения: 10.01.2021.
15. How to use Google Translate API in Android Studio projects? [Электронный ресурс]. – Режим доступа: https://medium.com/@yeksancansu/how-to-use-google-translate-api-in-android- studio-projects-7f09cae320c7. Дата обращения: 25.01.2021.
16. Getting Started with MVP (Model View Presenter) on Android [Электронный ресурс]. – Режим доступа: https://www.raywenderlich.com/7026- getting-started-with-mvp-model-view-presenter-on-android#toc-anchor-007. Дата обращения: 26.02.2021.
17. Local Databases with SQLiteOpenHelper [Электронный ресурс]. – Режим доступа: https://guides.codepath.com/android/local-databases-with- sqliteopenhelper. Дата обращения: 01.10.2021.
18. Meet Android Studio [Электронный ресурс]. – Режим доступа: https://developer.android.com/studio/intro. Дата обращения: 10.11.2020.
19. MPAndroidChart [Электронный ресурс]. – Режим доступа: https://github.com/PhilJay/MPAndroidChart. Дата обращения: 5.11.2020.
20. Espresso basics [Электронный ресурс]. – Режим доступа:
https://developer.android.com/training/testing/espresso/basics. Дата обращения: 20.03.2021.
21. RecyclerView [Электронный ресурс]. – Режим доступа: https://metanit.com/java/android/5.11.php. Дата обращения: 23.01.2021.
22. Using Kotlin for Android Development [Электронный ресурс]. – Режим доступа: https://kotlinlang.org/docs/reference/android-overview.html. Дата обращения: 01.10.2020.