Игра "Жизнь"
Проектирование игры "Жизнь" и ее реализация в среде разработки Visual Studio 2010, версия .Net Framework 4.0. Особенности языка программирования C#, основных принципов ООП на языке C#. Проектирование пользовательского интерфейса. Описание алгоритмов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 18.04.2013 |
Размер файла | 990,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования и науки РФ
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
Кафедра компьютерных систем
в управлении и проектировании (КСУП)
Игра «Жизнь»
Пояснительная записка к курсовой работе по дисциплине
«Объектно-ориентированное программирование»
Выполнил:
Студент группы 580-1
Цоктоева Г.В.
Руководитель:
Аспирант кафедры КСУП
Калентьев А.А.
2013
Реферат
Курсовой проект 19 с., 10 рис., 8 источников.
Игра Жизнь
Цель работы: создание игры Жизнь, включающая в себя следующие функциональные особенности: меню выбора опций диалогового окна, графический интерфейс пользователя с ручным и автоматическим заполнением клеток, возможность сохранить и загрузить данные.
В результате была создана игра «Жизнь», отвечающая поставленным целям.
Пояснительная записка по курсовой работе была выполнена в текстовом редакторе Microsoft Office Word 2010 и представлена в печатном виде.
Содержание
- 1. Введение
- 2. Постановка и анализ задачи
- 2.1 Обзор аналогов
- 2.2 Проектирование пользовательского интерфейса
- 3. Описание алгоритмов
- 3.1 Игра
- 3.2 Справка
- 3.3 Установка игры на компьютер
- 4. Описание реализации
- 5. Описание программы для пользователя
- 5.1 Общие сведения
- 5.2 Запуск игры
- 6. Тестирование программы
- Заключение
- Список используемых источников
1. Введение
В настоящее время различные компьютерные приложения и игры имеют большой спрос и достаточно популярны, что очень выгодно для их создание и реализация.
Игру «Жизнь» изобрел математик Джон Хортон Конуэй в 1970 году. Об увлекательности игры свидетельствуют результаты множества интересных исследований и многочисленных компьютерных реализаций. При этом она имеет непосредственное отношение к перспективной в настоящее время области математики - теории клеточных автоматов.
С появлением объектно-ориентированного программирования (ООП), открылась возможность работы с программами большего объема, что очень удобно для промышленного программирования и создания различных приложений.
Данный документ описывает этапы проектирования и реализации курсового проекта. А, как известно, для создания игры потребуется программа большего объема, то отсюда вытекает актуальность применения ООП.
2. Постановка и анализ задачи
Так как программа курсового проекта должна быть реализована на языке программирования C#, то было принято решение использовать интегрированную среду разработки Microsoft Visual Studio 2010 с использованием .Net Framework 4.0. Данная среда является мощным и удобным инструментов в разработке программ на языках программирования C#, C++, C, VB. [5].
Для реализации нашего проекта нам потребовалось: окно, выполняющее функцию выбора размеров игрового поля и клетки (ширина, высота), форма самой клетки (квадрат, треугольник), файл (новая игра, сохранить, загрузить, выход), окно в котором осуществляется реализация игры содержит кнопки (заполнить автоматически поле, старт игры, очистить), также можно заполнить поле вручную, необходимо воспользоваться кнопками мыши. Левая кнопка создает новую клетку, правая удаляет клетку.
Можно загружать и сохранять данные игры. Данные будут храниться в виде xml файла. Так как xml является текстовым форматом, предназначенным для хранения структурированных данных.
При сохранении данных создается xml файл, в котором содержится состояние всех клеток на поле. При загрузке данных из файла считываются все состояния клеток, и заполняется игровое поле.
<Property>
<CellState> Состояние клетки </ CellState >
<X> X - позиция клетки </ X >
<Y> Y - позиция клетки </ Y >
<CellSize> Размер клеток </ CellSize>
<CellShape> Форма клеток </ CellShape >
<Width> Ширина игрового поля </ Width>
<Height> Высота игрового поля </ Height>
</Property>
2.1 Обзор аналогов
программирование интерфейс алгоритм язык
Данная игра имеет много аналогов, ниже представлены некоторые из них: Рисунок 2.1.1, Рисунок 2.1.2 и Рисунок 2.1.3
Рисунок 2.1.1 The Game of Life
Рисунок 2.1.2 Mirek's Cellebration
Рисунок 2.1.3 Life32
Проанализировав рассматриваемые аналоги, мы создаем практически полностью обновленную версию игры, с удобным графическим интерфейсом.
2.2 Проектирование пользовательского интерфейса
При проектировании интерфейса пользователя был выбран вариант, представленный на рисунках ниже, так как он оказался самым удобным и функциональным.
Перед началом игры необходимо ввести размеры игрового поля, размер клетки, выбрать форму клеток и нажать кнопку «Создать» (см. Рисунок 2.2.1).
Рисунок 2.2.1 Главное окно программы
Затем можно заполнить поле клетками как вручную, так и автоматически. Для заполнения поля автоматически, пользователь должен нажать кнопку «Заполнить автоматически». Для заполнения поля вручную, необходимо воспользоваться кнопками мыши. Левая кнопка создает новую клетку, правая удаляет клетку. После того как поле будет заполнено клетками необходимо нажать кнопку «Старт» (см. Рисунок 2.2.2).
Рисунок 2.2.2 Процесс игры
Так же во время игры можно будет создать и удалить клетки. Для сохранения или загрузки состояния клеток из файла, пользователь должен будет выбрать пункты «Сохранить» или «Загрузить» из меню «Файл», соответственно (см. Рисунок 2.2.3).
Рисунок 2.2.3 Меню файл
Меню «О программе» будет запускать форму содержащую информацию об авторе (см. Рисунок 2.2.4).
Рисунок 2.2.4 Меню о программе
3. Описание алгоритмов
3.1 Игра
Для начала игры «Жизнь» пользователь должен:
1 В папке LifeGame запустить файл LifeGame.exe
2 В открывшемся окне, установить размер поля и клетки, выбрать форму клетки
3 Нажать кнопку «Создать»
4 Заполнить поля клетки автоматически или вручную
5 Нажать кнопку «Старт игры»
6 При завершении игры можно сохранить данные
7 Для выхода зайти в «Файл» и выбрать «Выход»
3.2 Справка
Для получения информации о программе «Жизнь» пользователь должен:
1 Выбрать пункт «О программе» в главном меню игры.
2 Откроется новое окно со справкой.
3 Закрыть окно со справкой.
3.3 Установка игры на компьютер
Для установки игры «Жизнь» пользователь должен:
Запустить LifeGame.exe.
4. Описание реализации
MainForm - основной класс программы:
1. NewGame() - начинает новую игру;
2. CreatField() - создает поле для рисования;
DrawArea - пользовательский элемент управления на котором выводится вся графика:
1. InitializeVariables() - инициализация переменных;
2. DrawGridLine() - рисует линии сетки;
3. DrawLifeCells() - рисует живые клетки;
4. IsOutside() - проверяет находиться ли точка с координатами x, y в пределах игрового поля;
5. GenerateRandomCells() - генерирует случайное количество клеток;
6. StartStopGame() - Старт/Стоп игры;
7. ClearField() - очищает игровое поле.
GameLogic - основная логика игры, реализует интерфейс INextStep:
1. NextStep() - возвращает состояние клеток на следующем шаге;
2. NeighboursCount() - возвращает количество соседей.
Для отображения схемы взаимодействия функциональных блоков программы составлена диаграмма вариантов использования (Use Cases).Варианты использования (Use cases) - способ отображения функциональности и требований к системе. Диаграммы вариантов использования состоят из именованных блоков функциональности (варианты использования), лиц или предметов, активизирующих функциональность (актеры) [7]. Use Cases диаграмма игры представлена на рисунке 4.1[4]
Диаграммы вариантов использования взаимодействия пользователя с программой представлены на рисунке 4.1.
Рисунок 4.1 -- Диаграммы вариантов использования взаимодействия пользователя с программой
Диаграммы взаимодействия классов представлены на рисунке 4.2.
Рисунок 4.2 -- Диаграммы взаимодействия классов
5. Описание программы для пользователя
5.1 Общие сведения
Игра «Жизнь» - одна из самых популярных математических игр столетия. Эта игра, представленная широкой общественности ведущим рубрику математических игр и развлечений в журнале Scientific American М.Гарднером, стала пользоваться большой известностью во всем мире. Игра «Жизнь», изобретенная Джоном Хортоном Конуэй, описывает популяцию стилизованных организмов, развивающуюся во времени под действием противоборствующих тенденций размножения и вымирания.
Действие игры происходит на некой плоскости, разделенной на клетки. Каждая клетка окружена 8 такими же клетками. Каждая клетка может находиться в двух состояниях - живом или мертвом, т. е. пустом. На состояние любой клетки оказывают влияние состояние соседних клеток. Во времени эти состояния дискретно в соответствии с некоторыми правилами или генетическим законам Конуэя, состоящими из 3 пунктов:
если рядом с пустой клеткой ровно три живых, то в пустой клетке рождается жизнь
если рядом с живой клеткой меньше двух живых клеток, то она умирает от одиночества
если рядом с живой клеткой больше трех живых клеток, то она умирает от тесноты.
Гибель и рождение всех организмов происходит одновременно.
Возникающие в игре ситуации очень похожи на реальные процессы, происходящие при зарождении, развитии и гибели живых организмов
Игра «Жизнь» относится к категории так называемых моделирующих игр - игр, которые в той или иной степени имитируют процессы, происходящие в реальной жизни.
5.2 Запуск игры
Запустите приложение запускающее игру или кликните на файл LifeGame.exe перед вами появится окно, в котором нужно указать размеры поля и клетки, а также форму самой клетки и нажать кнопку «Создать». После создания нужно заполнить поле автоматически (Заполнить автоматически) или вручную (кнопками мыши). Для запуска игры следует нажать кнопку «Старт игры» Для выхода из игры нажмите «Выход» в главном меню.
6. Тестирование программы
Программа была протестирована на основные исключительные ситуации, которые могут возникнуть в ходе работы приложения. Чем больше размеры поля, тем медленнее работает программа. Также желательно, чтобы размеры поля не превышали размера экрана, так как это неблагоприятно сказывается на правильной работе программы.
Рисунок 6.1 -- Тестирование программы
Заключение
В процессе проделанной работы была спроектирована и реализована игра «Жизнь». Для реализации была выбрана среда разработки Visual Studio 2010, версия .Net Framework 4.0. Был изучен язык программирования C#, освоены основные принципы ООП на языке C#.
.
Список используемых источников
1 Чернышев А.А., Кирпиченко Л.И. «Общие требования и правила оформления. Работы студенческие учебные и выпускные квалификационные» 2003 г. - 40 стр.
2 Песков М.А. Учебно-методическое пособие «Объектно-ориентированное программирование. Методические указания к выполнению курсовых работ» 2007 г. - 40с.
3 Троелсен Э. «Язык программирования C# 2010 и платформа .NET 4». Издательство: Вильямс; Москва.: И.Д, Вильямс, 2011. - 1392с.
4 Пайтон Д., Питмен Н. «UML 2 для программистов». Издательство: Питер; СПб.:, 2012. - 240 с.
5 Microsoft Visual Studio 2010 - Википедия. [Электронный ресурс]. URL: http://ru.wikipedia.org/wiki/Visual_Studio (дата обращения 20.10.2012)
6 Use Cases - Варианты использования (Use Cases). [Электронный ресурс]. URL: http://www.caseclub.ru/articles/use_case.html (дата обращения 16.11.2012)
Размещено на Allbest.ru
Подобные документы
Общая характеристика сетевой игры с несколькими клиентами в программной среде MS Visual Studio 2010 на языке программирования C++ с использованием функций работы с сокетами. Реализация системного сервиса, разработки интерфейса, алгоритм его тестирования.
курсовая работа [495,3 K], добавлен 06.01.2013Разработка игры "Угадай персонажа", ее суть и содержание. Запоминание новых персонажей и вопросов, коррекция базы данных. Использование языка программирования С++ и среды разработки Microsoft Visual Studio 2010. Алгоритмы и методы, структура программы.
курсовая работа [571,9 K], добавлен 14.07.2012Разработка на языке программирования C# в среде Microsoft Visual Studio 2010 на базе Microsoft NET Framework 4 (4.5) программного средства, реализующего компилятор модельного языка программирования. Лексический, синтаксический и семантический анализатор.
курсовая работа [1,3 M], добавлен 24.06.2013Создание программы, реализующей игру "Линии". Среда разработки программы, описание ее общего вида. Основные алгоритмы программы. Реализация программы в среде разработки Microsoft Visual Studio 2008 на языке объектно-ориентированного программирования С++.
курсовая работа [639,0 K], добавлен 16.03.2012Разработка программы создания заметок в любом месте компьютера. Выбор технологии, языка и среды разработки приложения. Описание основных алгоритмов работы программного обеспечения. Проектирование пользовательского интерфейса. Выбор стратегии тестирования.
отчет по практике [700,5 K], добавлен 24.11.2014Проектирование приложения на языке С# в среде Microsoft Visual Studio 2008: составление алгоритмов сегментации текста документа и распознавания слова "Указ" в нем, создание архитектуры и интерфейса программного обеспечения, описание разработанных классов.
курсовая работа [2,4 M], добавлен 05.01.2011Выявление требований к информационной системе. Диаграмма вариантов использования. Проектирование информационного обеспечения с использованием семантических моделей. Проектирование пользовательского интерфейса. Реализация программы на Visual Studio.
дипломная работа [590,2 K], добавлен 28.08.2012Требования к техническим, программным средствам разработки и функционированию программы. Обоснование выбранного языка программирования. Описание алгоритма решения задачи, тестирование ее основных функций. Понятие дружелюбного пользовательского интерфейса.
курсовая работа [85,9 K], добавлен 31.10.2014История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.
курсовая работа [168,1 K], добавлен 27.09.2013Требования к MS Office 2007. Набор средств разработки Visual Studio Tools for Office как альтернатива VBA. Разработка СУБД на базе MS Access. Разработка надстройки "Электронные компоненты" для PowerPoint на языке C# в среде MS Visual Studio 2010.
дипломная работа [5,2 M], добавлен 03.05.2013