Veuillez utiliser cette adresse pour citer ce document : http://elartu.tntu.edu.ua/handle/lib/49072
Title: Розробка веб-платформи для надання послуг репетиторства з програмування «CodeMentor» з використанням фреймворку React.js
Other Titles: Development of a web platform for providing programming tutoring services «CodeMentor» using the React.js framework
Authors: Чендей, Богдан Васильович
Chendei, Bohdan
Affiliation: ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра програмної інженерії, м. Тернопіль, Україна
Bibliographic description (Ukraine): Чендей Б. В. Розробка веб-платформи для надання послуг репетиторства з програмування «CodeMentor» з використанням фреймворку React.js : спец. 121 - інженерія програмного забезпечення / наук. кер. Г. Б. Цуприк. Тернопіль: – Тернопільський національний технічний університет імені Івана Пулюя, 2025. 72 с.
Issue Date: Jun-2025
Submitted date: 9-Jun-2025
Date of entry: 27-Jun-2025
Publisher: ТНТУ ім. І. Пулюя
Country (code): UA
Place of the edition/event: ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна
Supervisor: Цуприк, Галина Богданівна
Committee members: Жаровський, Руслан Олегович
UDC: 004.9
Keywords: веб-платформа
онлайн-освіта
програмування
репетиторство
спільне редагування коду
React.js
collaborative code editing
online education
programming
Tutoring
web platform
Number of pages: 72
Abstract: Об’єкт дослідження – веб-платформа «CodeMentor» для організації репетиторських послуг з програмування з модулями спільного редагування коду та управління профілями. Ціль роботи – створити масштабовану й зручну платформу для ефективної взаємодії студентів і менторів, покращити доступ до якісного навчання програмуванню. Методи та технології – аналіз існуючих рішень, проєктування архітектури (UML-діаграми). Фронтенд на React.js, бекенд на Node.js + Express.js з REST API, PostgreSQL + MongoDB, WebSocket/WebRTC для реального часу; тести та CI/CD. Результати й наукова новизна – реалізовано прототип із ключовими модулями: реєстрація, пошук ментора, спільний редактор коду, повідомлення. Запропоновано оптимізовану архітектуру інтеграції редактора коду для мінімізації затримок; гібридне зберігання даних для масштабованості; адаптивний підхід до навантаження. Висновки й пропозиції розвитку – Платформа відповідає поставленій цілі й функціонує належно. Рекомендовано додати аналітику ефективності занять, інтеграції з зовнішніми сервісами, мобільну версію, покращити масштабування.
The object of the study is the "CodeMentor" web platform for organizing programming tutoring services, featuring modules for collaborative code editing and profile management. The aim of the work is to create a scalable and user-friendly platform for effective interaction between students and mentors, and to improve access to quality programming education. Methods and technologies – analysis of existing solutions, architecture design (UML diagrams). Frontend on React.js, backend on Node.js + Express.js with a REST API, PostgreSQL + MongoDB, WebSocket/WebRTC for real-time features; testing and CI/CD. Results and scientific novelty – A prototype with key modules was implemented: registration, mentor search, a collaborative code editor, and messaging. An optimized architecture for integrating the code editor was proposed to minimize latency; a hybrid data storage solution for scalability; and an adaptive approach to load management. Conclusions and suggestions for future development – The platform meets the stated goals and functions properly. It is recommended to add analytics for session effectiveness, integrations with external services, a mobile version, and to improve scalability.
Content: ВСТУП 9 РОЗДІЛ 1. ТЕОРЕТИЧНІ ОСНОВИ РОЗРОБКИ ВЕБ-ПЛАТФОРМ 10 1.1 Аналіз сучасних технологій розробки веб-додатків 10 1.2 Огляд існуючих платформ для надання освітніх послуг 14 1.3 Вимоги до розробки веб-платформ у сфері освітніх послуг 15 1.4 Обґрунтування вибору технологій для реалізації проєкту 18 РОЗДІЛ 2. АНАЛІЗ ТА ПРОЄКТУВАННЯ ВЕБ-ПЛАТФОРМИ 20 2.1 Формування вимог до веб-платформи 20 2.1.1 Функціональні вимоги 20 2.1.2 Нефункціональні вимоги 22 2.2 Проєктування архітектури системи 23 2.3 Розробка структури бази даних 25 2.3.1 Структура нереляційної бази даних 28 2.4 Проєктування інтерфейсу користувача 29 2.4.1 Дизайн інтерфейсу для студентів 29 2.4.2 Дизайн адміністративної панелі 30 РОЗДІЛ 3. ПРАКТИЧНА РЕАЛІЗАЦІЯ ВЕБ-ПЛАТФОРМИ 32 3.1 Розробка клієнтської частини 32 3.1.1 Управління станом клієнтського застосунку 33 3.1.2 Інтеграція з API бекенда 34 3.2 Розробка серверної частини 36 3.2.1 Реалізація API 36 3.2.2 Розробка системи авторизації та аутентифікації 37 3.2.3 Інтеграція з базою даних 39 3.3 Реалізація системи оплати та бронювання занять 40 3.4 Тестування та оптимізація 41 РОЗДІЛ 4. АНАЛІЗ РЕЗУЛЬТАТІВ ТА ПЕРСПЕКТИВИ РОЗВИТКУ 43 4.1 Аналіз отриманих результатів розробки 43 4.2 Оцінка ефективності розробленої платформи 44 4.3 Перспективи розвитку веб-платформи 45 4.4 Рекомендації щодо просування та розширення функціоналу 46 РОЗДІЛ 5. БЕЗПЕКА ЖИТТЄДІЯЛЬНОСТІ, ОСНОВИ ОХОРОНИ ПРАЦІ 47 5.1 Роль центральної нервової системи в трудовій діяльності людини. 47 5.2 Шляхи збереження працездатності та підвищення продуктивності праці. 50 ВИСНОВКИ 52 СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ 54 ДОДАТКИ 57 ДОДАТОК А — Лістинг 58 ДОДАТОК Б — Результат роботи 70 ДОДАТОК В — Диск із кваліфікаційною роботою бакалавра 72
URI: http://elartu.tntu.edu.ua/handle/lib/49072
Copyright owner: © Чендей Богдан Васильович, 2025
References (Ukraine): 1. Остапчук О., Цуприк Г. Технічні особливості взаємодії між клієнтом та сервером у реальному часі. Матеріали Ⅹ науково-технічної конференції, інформаційні моделі, системи та технології Тернопільського національного технічного університету імені Івана Пулюя. Тернопіль: ТНТУ, 2022. С. 124–124.
2. Казмірчук В., Цуприк Г. Розробка автоматизованої інформаційної системи обробки даних. Матеріали Ⅷ науково-технічної конференції „Інформаційні моделі, системи та технології. Тернопіль: ТНТУ, 2020. С. 148–148.
3. Пасіка Д., Цуприк Г. Розробка односторінкового веб-застосунку з використанням VUE. JS і REACT: порівняльний аналіз продуктивностіб користувацького досвіду та доцільності. Матеріали ⅩⅠ науково-технічної конференції „Інформаційні моделі, системи та технології”. Тернопіль: ТНТУ, 2023. С. 218–219.
4. Typescriptlang. TypeScript Documentation. URL: https://www.typescriptlang.org/docs/ (дата звернення: 02.05.2025).
5. Vuejs. Docs. URL: https://vuejs.org/guide/introduction.html (дата звернення: 30.04.2025).
6. Кантелон М., Хартер М., Ганнон Т., Морган Н. Дж. Node.js у дії. Київ: Видавнича група «Діалектика», 2018. 360 с.
7. Флауерс, М. Ruby on Rails: швидка розробка веб-додатків М. Флауерс. Харків : Видавництво «Фоліо», 2020. 350 с.
8. RabbitMQ: Messaging that just works URL: https://www.rabbitmq.com/documentation.html (дата звернення: 03.05.2025).
9. Microsoft SQL Server Documentation URL: https://learn.microsoft.com/sql/(дата звернення: 07.04.2025)
10. Google Web Fundamentals. URL: https://developers.google.com/web (дата звернення: 01.03.2025)
11. Сущик, А. М. Метод створення документації для REST API на основі тестів: 121 Інженерія програмного забезпечення А. М. Сущик. Київ: КПІ ім. Ігоря Сікорського, 2019. 130 с
12. Шустер, О. Прогресивні веб-додатки: ключові аспекти та переваги для бізнесу О. Шустер. Київ: FreshTech, 2024. 15 с.
13. Codecademy. Learn to Code. URL: https://www.codecademy.com/ (дата звернення: 20.03.2025).
14. Node.js Documentation. URL: https://nodejs.org/docs/latest/api/ (дата звернення: 02.03.2025)
Content type: Bachelor Thesis
Appears in Collections:121 — Інженерія програмного забезпечення (бакалаври)

Files in This Item:
File Description SizeFormat 
dyplom_Chendei_2025.pdf1,09 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Outils d'administration