Приложение "Шахматы" - Курсовая работа

бесплатно 0
4.5 37
Разработка приложения, реализующее сетевую игру "Шахматы". Анализ предметной области. Выбор дополнительных функций и способа использования приложения. Кодирование и отладка функций, их параметры. Тестирование программного приложения; описание интерфейса.


Аннотация к работе
Сургутский государственный университет Ханты-Мансийского автономного округа - Югры Пояснительная записка к курсовому проекту по дисциплине: «Технология разработки программного обеспечения»Курсовой проект по дисциплине «Технология разработки программного обеспечения» направлен на укрепление знаний по курсу программирования, основы которого были рассмотрены при изучении нескольких профильных дисциплин: · объектно-ориентированное программирование; Данная работа позволяет студенту ознакомиться и изучить на практике основные требования по оформлению пояснительной записки, а также самостоятельно изучить организацию среды, в которой разрабатывается программа и платформы, на которой будет функционировать приложение.Шахматная партия играется между двумя партнерами, которые поочередно перемещают фигуры на квадратной доске, названной "шахматной". Цель каждого игрока - атаковать короля партнера таким образом, чтобы партнер не имел никаких возможных ходов, которые позволяют избежать "взятия" короля на следующем ходу. Партнер, королю которого был поставлен мат, проиграл партию. В начале партии один игрок имеет 16 светлых фигур ("белые"); другой - 16 темных фигур ("черные"): Белый король, Белый ферзь, Две белые ладьи, Два белых слона, Два белых коня, Восемь белых пешек, Черный король, Черный ферзь, Две черные ладьи, Два черных слона, Два черных коня, Восемь черных пешек. Пешка может ходить вперед на свободное поле, расположенное непосредственно перед ней на той же самой вертикали, или с исходной позиции пешка может продвинуться на два поля по той же самой вертикали, если оба эти поля не заняты, или пешка ходит на поле, занимаемое фигурой партнера, которая расположена по диагонали на смежной вертикали, одновременно забирая эту фигуру.При создании приложения, реализующего сетевую игру «Шахматы», необходимо реализовать следующие функции: · жеребьевка - функция необходимая для того, чтобы выяснить какая из сторон ходит первой; · регистрация игроков - свойство приложения необходимое для того, чтобы назначать игрокам какие-либо идентифицирующие значения; · контроль правильность хода и расстановки шашек - функция необходимая для того, чтобы исключить факт, когда игрок ставит шашку или ходит ей в запрещенную правилами игры позицию; После рассмотрения данного списка было скорректировано задание на разработку программы: · при реализации сетевой игры, когда местонахождение сервера меняется, накопление и просмотр статистики не несут никакого смысла, ведение статистики целесообразно для создания браузерного варианта игры; · жеребьевка (выбор цвета фигур) должна проводится одним из игроков (по соглашению), а затем результаты жеребьевки должны быть переданы сообщением второму игроку, который должен поменять цвет фигур, поэтому следует реализовать функцию смены цвета фигур.Следовательно, для его реализации необходимо на главную форму программы поместить готовые компоненты среды разработки C Builder 6.0 (Рисунок 2). На форме Form1 расположены следующие компоненты: · компонент TMAINMENU MAINMENU1 - компонент, реализующий меню приложения. Элементы меню представлены на рисунке 3. · компоненты TIMAGE (рисунки): Board - доска; · компонент TBUTTON Button1 - по событию нажатия на кнопку «Послать» происходит передача сообщения по сети;· short SELCOMPLETE - SELCOMPLETE=0 - фигура в покое, SELCOMPLETE=1 - фигура выбрана, SELCOMPLETE=2 - фигурара сделала ход; · void __fastcall TFORM2::Button1Click(TOBJECT *Sender) - обработка события нажатия на кнопку «жеребьевка» на стартовой форме; · void __fastcall TFORM2::Button2Click(TOBJECT *Sender) - обработка события нажатия на кнопку «начать» на стартовой форме; · void __fastcall TFORM1::BOARDMOUSEUP(TOBJECT *Sender, TMOUSEBUTTON Button,TSHIFTSTATE Shift, int X, int Y) - обработка события щелчка мыши по доске (проверяется область попадания по доске, выделяется выбранная клетка и делается ход); · void __fastcall TFORM1::SERVERSOCKET1CLIENTREAD(TOBJECT *Sender, · TCUSTOMWINSOCKET *Socket) - обработка события чтения сокета (прием информации по сети );Для выявления ошибок мною было произведено множество попыток тестирования игры с различными вариантами расстановок, при помощи так называемых «обезьяных тестов». В ходе тестирования было выявлена ошибка: При обмене соодщений на экран выводятся лишние символы (рисунок 5). Для исправления ошибки в функцию отправки сообщения в формируемую строку была добавлена подстрока probel(%%) для фиксации окончания строки: void TFORM1 :: SENDMESSAGE () В ходе тестирования выяснилось, что для запуска новой игры необходимо перезапускать программу, поэтому было принято решение добавить пункт меню «Новая игра» (Рисунок 7). А также добавить обработку события нажатия на пункт меню «Новая игра» void __fastcall TFORM1::N7Click(TOBJECT *Sender)В папке с программой необходимо создать папку GAME , в которую будут записываться файлы с сохраненными ходами.Чтобы запустить программу необходимо щелкнуть по ярлыку программы левой кнопкой мыши.

План
Содержание

Введение

1. Анализ

1.1 Изучение предметной области

1.2 Анализ задания

2. Проектирование

3. Кодирование и отладка

4. Тестирование

5. Сопровождение

5.1 Установка программы

5.2 Руководство пользователя

Заключение

Список используемой литературы

Приложения
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?