АННОТАЦИЯ 3
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, СОКРАЩЕНИЙ 3
ВВЕДЕНИЕ 5
1 Анализ предметной области 6
1.1 Изучение предметной области 6
1.2 Описание правил шахмат 6
1.3 Формат сохранения партии 7
1.4 Нотация партии 8
1.5 Анализ существующих решений 9
2 Проектирование веб-приложения 12
2.1 Функциональные требования 12
2.2 Нефункциональные требования 14
2.3 Сценарии вариантов использования 14
2.4 Общая архитектура 17
2.5 Архитектура клиентской части 20
2.6 Архитектура серверной части 22
2.7 Архитектура компонентов клиентской части 25
2.8 Архитектура WebSocket 26
2.9 Архитектура сервиса анализа с помощью движка 27
2.10 Архитектура сервиса общего анализа 28
3 Технические средства разработки 30
3.1 Архитектура веб-приложения 30
3.2 Серверная часть 30
3.3 Клиентская часть 32
3.4 База данных 35
3.5 Сервис анализа с помощью движка 36
3.6 Сторонние решения 36
4 РЕАЛИЗАЦИЯ 38
ЗАКЛЮЧЕНИЕ 45
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 46
ПРИЛОЖЕНИЕ А 49
ПРИЛОЖЕНИЕ Б 50
ПРИЛОЖЕНИЕ В 51
ПРИЛОЖЕНИЕ Г 53
Актуальность данной работы обеспечивается за счет анализа сыгранных игр, решения определенных задач, и просмотра материала и информации которое помогает в обучении игрока.
С давних времен люди играли в шахматы. И с развитием современных технологий игра в шахматы стала возможной и в интернете. Поэтому появление различных сайтов для игры в шахматы, не заставило себя ждать.
Каждое приложение имеет свои преимущества и недостатки. Поэтому автор решил спроектировать и реализовать веб-приложение для обучения игры в шахматы, который содержал бы в себе весь необходимый функционал для игры и был бы удобен в использовании.
Цель работы - разработать веб-приложение для обучения игре в шахматы.
Для реализации поставленной цели были выдвинуты следующие задачи:
1. Проанализировать предметную область и аналогичные веб-приложения;
2. Сформулировать функциональные и нефункциональные требования к разрабатываемому веб-приложению;
3. Спроектировать веб-приложение;
4. Реализовать веб-приложение.
В ходе работы была изучена и исследована предметная область, проанализированы существующие аналоги, выявлены их преимущества и недостатки, и на этой основе сформированы требования к разрабатываемому веб-приложению. Также, в рамках данной работы, была создана технология разработки клиент-серверных приложений и на практике приобретены навыки их разработки.
В результате проделанной работы было спроектировано и разработано веб-приложение, обучающее игре в шахматы. Реализовано хранение данных внутри веб-приложения.
Разработанное веб-приложение помогает в обучении игроков начального и среднего уровня.
Таким образом, задачи были выполнены и цель работы достигнута.