Тип работы:
Предмет:
Язык работы:


ВЕБ-ПРИЛОЖЕНИЕ ИНТЕРНЕТ-МАГАЗИНА ДЛЯ ПРОДАЖИ КНИГ И УПРАВЛЕНИЯ ЗАКАЗАМИ

Работа №185796

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы73
Год сдачи2025
Стоимость4800 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
17
Не подходит работа?

Узнай цену на написание


Аннотация
ВВЕДЕНИЕ 4
1 Анализ аналогов 6
1.1 Читай-город (chitai-gorod.ru) 6
1.2 ЛитРес (litres.ru) 6
1.3 Read.ru 7
1.4 Выводы по анализу аналогов 7
2 Анализ требований 8
2.1 Функциональные и нефункциональные требования 8
2.2 Модель предметной области 9
2.3 Реализация классов предметной области 11
2.4 Диаграмма вариантов использования 11
2.5 Диаграмма деятельности — сценарии взаимодействия пользователей 13
3 Реализация серверной части (backend) 15
3.1 Архитектура приложения 15
3.2 API и маршруты 17
3.3 ORM-модели и база данных 19
3.4 Аутентификация и авторизация (JWT, роли) 21
3.5 Middleware: логирование, проверка ролей, CORS 23
3.6 Работа с файлами (обложки и PDF-документы) 25
3.7 Взаимодействие с внешним сервисом обработки книг 27
3.8 Структура базы данных 29
3.9 Защищённая загрузка PDF-файлов после покупки 29
4 Реализация клиентской части (frontend) 32
4.1 Структура проекта на Vue 3 32
4.2 Навигация и маршрутизация 34
4.3 Аутентификация на клиенте 35
4.4 Управление состоянием (Pinia) 37
4.5 Компоненты интерфейса 39
4.6 Интернационализация и локализация 45
5 Развёртывание 48
5.1 Используемые технологии развертывания 48
5.2 Подготовка конфигурации 49
5.3 Сборка и запуск контейнеров 51
5.4 Организация файлов и путей 52
5.5 Развёртывание внешнего сервиса анализа книг 53
ЗАКЛЮЧЕНИЕ 66
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 68


В последние годы электронная коммерция стала неотъемлемой частью повседневной жизни. Интернет-магазины позволяют людям приобретать товары и услуги без необходимости покидать дом, экономя время и усилия. Особенно стремительно развивается рынок цифровой продажи книг, где пользователи могут удобно находить, приобретать и скачивать литературу в электронном виде или заказывать печатные издания с доставкой [1]. Это делает систему управления интернет-магазином книг актуальной и востребованной.
Современные пользователи ожидают от онлайн-магазина не только широкий ассортимент книг, но и интуитивно понятный интерфейс, персонализированные рекомендации, систему отзывов, а также простой и безопасный процесс оформления заказов [2]. Поэтому создание специализированного веб-приложения для продажи книг требует комплексного подхода, сочетающего удобство, функциональность и безопасность.
Целью данной выпускной квалификационной работы является разработка полнофункционального веб-приложения интернет-магазина книг с возможностью управления заказами, пользователями, книжными наборами (комбо-наборами) и отзывами. В приложении реализована авторизация с использованием JWT, разграничение прав доступа по ролям (администратор, сотрудник, покупатель) [3], система управления каталогом книг и комбо-наборов, оформление и отслеживание заказов, а также модуль рекомендаций книг.
Для реализации проекта были использованы современные технологии:
- язык программирования Go и фреймворк Gin для серверной части;
- библиотека GORM для работы с базой данных PostgreSQL;
- механизм JWT для аутентификации и авторизации;
- Docker для контейнеризации приложения;
- а также Vue 3, TypeScript, Pinia, i18n, Tailwind CSS для клиентской части;
- в отдельных модулях — поддержка загрузки и хранения изображений, а также PDF-файлов.
Разработка веб-приложения осуществлялась по модели клиент-сервер с REST- архитектурой. Особое внимание было уделено модульной структуре, безопасности и расширяемости решения. Приложение позволяет администраторам и сотрудникам 4
управлять ассортиментом, получать статистику и настраивать параметры магазина, в то время как покупатели могут регистрироваться, просматривать книги, оформлять заказы и оставлять отзывы.
Работа включает в себя анализ существующих решений, формализацию требований, проектирование архитектуры, реализацию ключевых функций, тестирование, а также описание процесса развертывания системы.
Таким образом, результатом данной работы является веб-приложение интернет- магазина книг, готовое к использованию и дальнейшему расширению


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В ходе выполнения данной выпускной квалификационной работы была разработана и реализована полнофункциональная веб-система интернет-магазина по продаже книг и управлению заказами. Система охватывает как клиентскую, так и серверную части и включает в себя ключевые компоненты, характерные для современных e-commerce решений: каталог товаров, корзина покупок, оформление заказов, управление ролями пользователей (покупатель, сотрудник, администратор), хранение истории операций и система отзывов.
Особое внимание было уделено вопросам масштабируемости и модульности архитектуры. Backend-приложение построено на языке Go с использованием фреймворка Gin и GORM для взаимодействия с базой данных PostgreSQL. Frontend разработан с использованием современного стека Vue.js 3, Vite и Pinia, с полной поддержкой i18n- интернационализации. Система развёртывается через Docker Compose, включая в себя базы данных, сервер приложений и клиентскую часть.
Одной из ключевых особенностей проекта является интеграция внешнего микросервиса анализа PDF-книг, выполняющего автоматическое извлечение ключевых слов и структуры оглавления. Данный сервис стал основой для реализации интеллектуального помощника (helper-chat), предоставляющего пользователю расширенные возможности поиска: семантический подбор литературы, навигация по главам, уточнение тематики по содержанию. Таким образом, реализованная архитектура не только покрывает базовые потребности интернет-магазина, но и закладывает основу для интеллектуальных сценариев взаимодействия.
На всех этапах разработки соблюдались принципы надёжности, безопасности (аутентификация JWT, разграничение прав), удобства взаимодействия с интерфейсом, а также гибкости расширения. Все компоненты системы могут масштабироваться независимо, а открытые API-интерфейсы позволяют легко интегрировать внешние модули или мобильные клиенты.
Следующим естественным шагом развития проекта может стать создание мобильного приложения. В современных реалиях не каждый пользователь имеет доступ к компьютеру, однако почти у каждого есть смартфон. Реализация нативного или гибридного мобильного клиента (например, с использованием Flutter или React Native) позволит значительно расширить охват аудитории и сделать взаимодействие с платформой максимально доступным. При этом, благодаря модульной архитектуре и RESTful API, мобильный клиент может быть интегрирован в систему без значительных изменений в backend-части.
Подводя итог, можно отметить, что поставленные цели работы были успешно достигнуты. Проект представляет собой законченное веб-приложение с современной архитектурой, функциональной полнотой и перспективой для дальнейшего развития. Возможными направлениями расширения могут стать интеграция с платёжными шлюзами, мобильные клиенты, поддержка рекомендаций на основе пользовательских предпочтений, а также перенос интеллектуальных функций в облако с использованием более продвинутых языковых моделей.



1. DHL eCommerce Solutions. E-Commerce Trends Report 2024: How the world shops online [Электронный ресурс] // DHL. - 2024. - 18 p. - URL: https://www.dhl.com/content/dam/dhl/local/global/dhl-ecommerce/documents/pdf/g0-dhl-e- commerce-trends-report-2024.pdf (дата обращения: 17.04.2025).
2. Global Book Market 2023: Revenue growth in many countries despite major challenges [Электронный ресурс] // NIQ. - 2024. - URL: https://nielseniq.com/global/en/news- center/2024/global-book-market-2023-revenue-growth-in-many-countries-despite-major- challenges/ (дата обращения: 10.04.2025).
3. jwt-go: A Go implementation of JSON Web Tokens [Электронный ресурс] // GitHub.
- URL: https://github.com/golang-jwt/jwt (дата обращения: 10.04.2025).
4. Клименко В. Идеальный продукт и его UX/UI дизайн [Электронный ресурс] // Хабр. - 2024. - URL: https://habr.com/ru/articles/846054/ (дата обращения: 04.04.2025).
5. Читай-город [Электронный ресурс] // chitai-gorod.ru. - URL: https://www.chitai- gorod.ru/ (дата обращения: 05.03.2025).
6. Литрес: Электронные книги и аудиокниги [Электронный ресурс] // Litres.ru. - URL: https://www.litres.ru/ (дата обращения: 05.03.2025).
7. Что читать дальше: Рекомендации [Электронный ресурс] // Издательство Эксмо.
- URL: https://eksmo.ru/i/chto-chitat-dalshe/ (дата обращения: 05.03.2025).
8. UX Case Study: Bookstore Responsive Website Redesign [Электронный ресурс] // Medium. - 2018. - URL: https://uxdesign.cc/ux-case-study-bookstore-responsive-website- redesign-195d15fe83c1 (дата обращения: 09.04.2025).
9. User experience design [Электронный ресурс] // Wikipedia. The Free Encyclopedia.
- [Б. м.], 2024. URL: https://en.wikipedia.org/wiki/User interface design (дата обращения: 07.03.2025)
10. О защите прав потребителей : Закон Российской Федерации от 07.02.1992 № 2300-1 (ред. от 08.08.2024) [Электронный ресурс] // КонсультантПлюс. - URL: http://www.consultant.ru/document/cons doc LAW 305/ (дата обращения: 20.09.2024).
11. Маркетинговое исследование Онлайн-рынок книг 2021 [Электронный ресурс] // Data Insight. - [Б. м.], 2021. URL: https://datainsight.ru/Books 2020H2 2021H1 (дата обращения: 20.12.2024).
12. Бабаров Н. А. Социологическое исследование поведения покупателей в интернет-магазине [Электронный ресурс] // Cyberleninka. - URL: https://cyberleninka.ru/article/n/sotsiologicheskoe-issledovanie-povedeniya-pokupateley-v- internetmagazine (дата обращения: 20.09.2024).
13. OWASP Top 10: самые распространённые уязвимости веб-приложений [Электронный ресурс] // Skillbox Media. - [Б. м.], 2023. URL: https://skillbox.ru/media/code/owasp-top-10-samye-rasprostranyennye-uyazvimosti- vebprilozheniy/ (дата обращения: 10.03.2025).
14. Declaring Models with GORM [Электронный ресурс] // GORM. - URL: https://gorm.io/docs/models.html (дата обращения: 10.03.2025).
15. RFC 7519. JSON Web Token (JWT) [Электронный ресурс] // M. Jones, J. Bradley, N. Sakimura ; IETF. - May 2015. - (Standards Track). - URL: https://www.rfc- editor.org/rfc/rfc7519 (дата обращения: 16.02.2025).



Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ