Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
ℹ️Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.
Аннотация 2
Введение 5
Основные понятия предметной области 8
1 Анализ существующих решений 9
1.1 Обзор приложений для удаленной передачи файлов 9
1.1.1 PushBullet 9
1.1.2 Airdroid 10
1.1.3 SHAREit 12
1.1.4 Resilio Sync 13
2 Планирование 14
2.1 Сценарии использования 14
2.2 Требование к операционной системе 19
2.3 Требования к среде эксплуатации 19
2.4 Обоснование выбора платформ 19
2.5 Обоснование выбора ОС Windows, Linux, OS X 20
2.6 Обосноввание выбора платформы Android 20
2.7 Обоснование выбора сред разработки 21
2.8 Обоснование выбора СУБД 22
3 Проектирование системы 23
3.1 Проектирование архитектуры приложения 23
3.2 Проектирование платформонезависимой библиотеки ...24
3.3 Архитектура под Android, Windows, Linux, OS X 25
3.4 Проектирование сервера 25
4 Реализация 26
4.1 Реализация платформонезависимой библиотеки 26
4.1.1 Внутренняя архитектура библиотеки 30
4.2 Реализация серверной части 39
4.3 Реализация клиентской части приложения для ПК 42
4.3 Реализация клиентской части приложения для ПК 43
5 Функциональное тестирование 48
5.1 Тест 1 - Регистрация и авторизация пользователя 48
5.2 Тест 2 - Подключение к устройству 49
5.3 Тест 3 - Навигация по файловой системе устройства....50
5.4 Тест 4 - Просмотр списка друзей и добавление новых
друзей 51
5.5 Тест 5 - Отправка и прием файлов 52
5.6 Тест 6 - Манипуляция с файлами и папками 54
5.7 Тест 7 - Работоспособность программного продукта на
разых операционных системах 54
6 Руководство пользователя 58
6.1 Назначение разработки 58
6.2 Подготовка к работе 58
Заключение 59
Библиографический список 60
📖 Аннотация
В данной выпускной квалификационной работе представлена разработка и реализация кроссплатформенного сетевого файлового менеджера, предназначенного для передачи, приема и совместного использования файлов и каталогов через интернет или локальную сеть. Актуальность исследования обусловлена широким распространением многодевайсности, когда, согласно данным Яндекса, 84% пользователей используют более одного устройства с различными операционными системами, что создает проблему совместимости программного обеспечения и необходимость в универсальных решениях. Основным результатом работы является готовый программный продукт, прошедший полный цикл разработки — от анализа аналогов и проектирования архитектуры до реализации и тестирования, который обеспечивает удобный удаленный доступ к файловой системе и обмен данными между платформами Windows, Linux, macOS и Android. Научная значимость заключается в исследовании и применении методов кроссплатформенной разработки и проектирования сетевых протоколов, а практическая — в создании инструмента, повышающего эффективность работы как индивидуальных пользователей, так и сотрудников предприятий за счет консолидации функций в одном приложении с простым интерфейсом. В ходе анализа предметной области были рассмотрены существующие решения, такие как PushBullet, Airdroid и SHAREit, а также теоретические основы, изложенные в работах, посвященных транспортным протоколам, Android NDK и общим принципам сетевого взаимодействия, что позволило обосновать архитектурные и технологические выборы при создании данного файлового менеджера.
📖 Введение
Стремительное развитие вычислительной и телекоммуникационной техники привело к тому, что большинство людей обладает двумя и более устройствами. По данным исследования Яндекс[1] 84% пользователей интернета в течение месяца используют для выхода в сеть больше одного устройства - например, рабочий и домашний компьютеры или компьютер и мобильное устройство. Операционные системы у этих устройств, как правило, разные. Поэтому возникает проблема совместимости программного обеспечения. Кроссплатформенность решает эту проблему. Ведь в рамках одного программного продукта пользователю не придется устанавливать дополнительное программное обеспечение, чтобы передать данные на другие операционные системы. По данным аналитического сервиса StatCounter за 2017 год [2] самой популярной системой стал Android, с небольшим отрывом второе место занимает Windows, а последние места делят ОС семейства Linux и OS X. И именно на эти платформы делается упор в разработке кроссплатформенного приложения.
В настоящее время существует множество различных программ для передачи файлов. Однако ни одна из них не предоставляет того набора функций, которые бы заметно увеличили возможности пользователя при работе с файлами, а также избавили от установки дополнительных программных продуктов. Поэтому возникает потребность в написании программного обеспечения, которое бы решило существующие проблемы и повысило удобство и эффективность в области удаленной передачи файлов.
Актуальность и необходимость создания такой программы, которая бы значительно облегчила дистанционную работу с файлами и их отправку, как при домашнем использовании, так и на предприятии, повысив качество работы, а также снизив труд человека, обусловлена следующими аспектами:
1. возможностью передачи файлов, как через интернет, так и через локальную сеть для снижения расходов, например, в мобильной сети интернет.
2. наличием двухпанельного файлового менеджера для работы с файлами на удаленном устройстве
3. полным доступом к файловой системе ваших устройств, а также возможностью настроить и предоставить общий доступ к файлам и папкам для устройств друзей.
4. кроссплатформенность - приложение может быть запущено на всех популярных ОС: Windows, Linux, macOS, Android.
Цели и задачи
Цель работы - разработка кроссплатформенного сетевого файлового менеджера, позволяющего осуществить удаленную передачу файлов и папок, настроить общий доступ, а также получить полный доступ к файловой системе на своих устройствах.
Для осуществления поставленной цели необходимо реализовать следующие задачи:
а) исследовать существующие программные продукты для передачи файлов;
б) изучить проблемы удаленной передачи файлов и выделить функциональные возможности приложения;
в) исследовать область разработки десктопных и мобильных приложений;
г) выделить ядро программы и реализовать его в виде кроссплатформенной библиотеки;
д) спроектировать серверную часть: сервер, базу данных и настроить шифрование.
е) написать front-end для персональных компьютеров и мобильных устройств
ж) создать простой и удобный инсталлятор, который включает в себя все
необходимые файлы (библиотеки, расширения)
з) протестировать разработанный программный продукт
✅ Заключение
В данном проекте был разработан продукт, предназначенный для удаленной работы с файлами и папками, и их передаче на другое устройство. Простой интерфейс программы не вызовет трудности для начинающего пользователя. Набор функций позволяет использовать приложение на предприятии для обмена документами между рабочими в офисе и на выезде, есть возможность получить доступ к необходимым файлам, которые находятся в общей папке.
В ходе выполнения работы решены следующие задачи:
1) проведен анализ существующего программного обеспечения для удаленной работы с файлами и папками;
2) спроектирована структура приложения;
3) реализован кроссплатформенный программный продукт для удаленной передачи файлов и папок;
4) проведено тестирование программного продукта;
Результат работы - программный продукт, который позволяет загружать, выгружать, делиться и работать с файлами и папками на удаленном устройстве.