Тема: Разработка децентрализованного чата с функцией видеосвязи
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
Введение 5
Глава 1 Изучение актуальности понятия децентрализации 7
1.1 Исследование предметной области 7
1.2 Выбор технологии разработки чата с функцией видеосвязи 9
Глава 2 Разработка серверной части децентрализованного чата с функцией видеосвязи 19
2.1 Выбор среды разработки и фреймворков (библиотек) 19
2.2 Создание файлов и подключение пакетов 22
2.3 Настройка работы веб-сокетов 25
Глава 3 Разработка клиентской части 28
3.1 Требования к интерфейсу приложения 28
3.2 Создание веб-приложения с помощью библиотеки «React» 29
3.3 Создание необходимых файлов и компонентов 31
3.4 Функциональное тестирование чата 45
Заключение 50
Список используемой литературы 52
Приложение А Код файла index.js (серверная часть) 55
Приложение Б Код файла App.js 56
Приложение В Код файла SocketContext.js 58
Приложение Г Код компонента Videoplayer 60
Приложение Д Код компонента Options 62
Приложение Е Код компонента Notifications 65
📖 Введение
Общение между клиентами без использования серверов уже используется программами многих компаний, из которых самые известные это Google - «Google Meet» и «Zoom».
Проблема быстрой и доступной связи сегодня актуальна, так как сотовая связь еще не может обеспечить покрытие во всех уголках планеты. Для организации как можно лучшего качества необходимо уменьшать количество посредников, на которых задерживается связь.
Целью данной работы является описание и анализ способов разработки децентрализованного чата с функцией видеосвязи.
Объектом изучения является организация связи в одноранговой сети.
Предмет изучения - способы передачи информации в децентрализованной сети, а также разработка для этих целей программного обеспечения.
Выполненная работа решает проблему выбора наиболее подходящих сред и средств разработки приложения, организующего связь.
Путем сравнительного анализа протоколов передачи данных определяется технология разработки проекта.
Теоретическая значимость состоит в систематизации теоретических знаний вопроса исследования и его актуализация.
Практическим значением разработки децентрализованного чата с функцией видеосвязи является подтверждение практичности данного вида связи, рассмотрение разницы преимуществ протоколов и определение сложности реализации проекта.
ВКР состоит из введения, трех глав, заключения, списка литературы и приложений.
В первой главе проведено изучение развития Всемирной паутины, определены понятия децентрализации, рассмотрены этапы развития вэба, изложены протоколы и технологии передачи информации в одноранговых сетях, описаны методы передаваемых запросов.
Во второй главе проведено сравнение популярных библиотек среды разработки Node.js, таких как React, Vue и Angular. Описаны шаги разработки сервера сигнализации и проверки его работы.
Третья глава посвящена разработке клиентской части видеочата, описаны библиотеки и порядок создания компонентов приложения. Проведена проверка работы проекта между двумя удаленными устройствами, проведено тестирование приложения и его сравнение с аналогами, использующими другие технологии.
✅ Заключение
Ознакомившись с историей развития интернета и Всемирной паутины удалось изучить и изложить их концепции и характеристики, направления развития и отношение к вопросам децентрализации.
В результате проведенного исследования удалось ознакомиться с разными аспектами и возможностями реализации принципов децентрализации в процессе разработки видеочата. Как итог - веб-приложение обладает необходимыми возможностями для создания соединения «клиент - клиент».
Анализ способов передачи данных позволил выбрать оптимальные решения в вопросе выбора протоколов передачи данных и подбора подходящих средств разработки.
Были представлены диаграмма классов технологии WebRTC и ее диаграмма потока данных («DF»). Для самого приложения создана диаграмма вариантов использования («use case diagram»).
Проведено функциональное тестирование приложения, и результаты отображены передачей пакетов данных в консоли браузера.
При разработке проекта мы ознакомились с синтаксисом написания компонентов, использованием их состояния и последующего отображения на странице. Также была изучена и отображена работа «хуков» библиотеки «React».
В процессе исследования библиотек и пакетов удалось подтвердить удобство пользованием пакетами управления веб-сокетами, которые одновременно реализуют и функционал сервера сигнализации, и функционал клиентской части приложения. Библиотека работы с пользовательскими интерфейсами «React» соответствует требованиям актуальности для разработки подобных приложений.
Так как приложение используется небольшим количеством участников оно приобретает еще некоторые преимущества: малая загруженность (благодаря чему скорость связи не будет снижаться), конфиденциальное средство общения (связь организовывается между двумя участниками по индивидуальному идентификатору, соединение защищено протоколом шифрования данных HTTPS), безопасность личных данных (данные не хранятся на сервере и удаляются сразу при разрыве соединения). Также к преимуществам разработанного веб-приложения можно отнести гибкость планировки. При необходимости его можно снабдить необходимыми компонентами или поменять внешний вид, что в последующем отобразиться у всех пользователей без необходимости переустановки программного обеспечения.
В перспективе дальнейшей разработки полученного приложения, добавления ему дополнительного функционала возможно получить удобное и многопользовательское приложение, которое не занимает памяти на устройствах пользователя. Также в дальнейшем развитии рационально добавить возможность групповых чатов с возможностью подключения множества пользователей.





