Реализация игры "Морской бой"

Автор работы: Пользователь скрыл имя, 08 Июня 2014 в 14:18, курсовая работа

Краткое описание

Цель этой курсовой работы – детально рассмотреть этапы написания игровой программы с использованием языка программирования C# и языка разметки XAML.
Поставленная цель подразумевает решение следующих задач:
Изучение Microsoft Visual Studio, WPF, XAML;
Написание программы, моделирующей игру «Морской бой»;
Научится пользоваться анимацией
Разработка приложения, с графическим редактором.

Прикрепленные файлы: 1 файл

Курсовая работа.doc

— 3.48 Мб (Скачать документ)

ВВЕДЕНИЕ


 

 


Продуктивная деятельность человека немыслима без полноценного досуга и отдыха. Индустрия развлечения с каждым годом поставляет на рынок все более современные продукты. Одним из самых популярных на сегодняшний день являются компьютерные игры. На данный момент они приобретают все большую популярность среди людей разной возрастной категории и разных социальных групп. Каждая такая категория, подвергается анализу на предмет выявления их специфичных потребностей. Изучив спрос, далее прописывается тот продукт, который максимально отвечает запросам аудитории, на которую оно рассчитано. Таким образом, достигается предельная индивидуализация продукта.

Задача разработки такого продукта, ложится на плечи специалистов располагающие необходимым багажом знаний, и использующих весь доступный арсенал программно-аппаратных средств, для достижения поставленных задач.

«Морской бой» - одна из самых популярных игр во всем мире. Эту игру нельзя определить к определенному возрастному ограничению, она привлекательна для очень широкой аудитории. Эта игра развивает логику и воображение.

Цель этой курсовой работы – детально рассмотреть этапы написания игровой программы с использованием языка программирования C# и языка разметки XAML.

Поставленная цель подразумевает решение следующих задач:

  • Изучение Microsoft Visual Studio, WPF, XAML;
  • Написание программы, моделирующей игру «Морской бой»;
  • Научится пользоваться анимацией
  • Разработка приложения, с графическим редактором.

 В первом разделе данной курсовой работы описывается среда разработки Microsoft Visual Studio 2010. Во второй главе приведены этапы разработки программы, такие как постановка задачи и алгоритм реализации. В последнем разделе, показана работа программы и ее описание.

В курсовой работе имеется три основных раздела и приложение. В работе присутствуют _ рисунков. Объем курсовой работы – _ страница.  

  1. ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ ОБ ИСПОЛЬЗУЕМОЙ ПРОГРАМНОЙ СРЕДЕ

 

 

 

В данном разделе пойдет речь о среде разработки MS Visual Studio 2012, а так же об использовании технологии WPF и языка XAML.

 

    1. Microsoft Visual Studio

 

Программная среда Visual Studio - интегрированная среда, упрощающая создание, отладку и развертывание приложений. Её применение позволяет дать волю фантазии и реализовать свое видение с помощью мощных редакторов и новейших методов координирования совместной деятельности разработчиков и дизайнеров. Так же позволяет работать в персонализированной среде, создавать приложения для любых платформ, включая Microsoft SharePoint и Windows Azure, используя для написания кода уже имеющиеся навыки, ускоряя тем самым процесс разработки. Интегрированная поддержка разработки через тестирование и новые инструменты отладки позволяют быстро и без труда находить и устранять ошибки, обеспечивая высокое качество решений.

Microsoft Visual Studio объединяет в себе огромное количество функций, позволяющих осуществлять разработки для Windows всех версий, в том числе и Windows 8, Интернета, SharePoint, различных мобильных устройств и облачных технологий. В Visual Studio реализуется новая среда разработчика, благодаря которой создавать приложения стало проще. Microsoft Visual Studio - это обновленная и упрощенная программная среда, для которой характерна высокая производительность, причем она не зависит от особенностей оборудования. 
         Каждая новая версия программы состоит из новейших инструментов и технологий, позволяющих разрабатывать приложения с учетом особенностей и положительных моментов современных платформ. Например, Visual Studio 2012 может поддерживать более ранние версии, в том числе Windows XP и Windows Server 2003. При этом разработчикам открыта дорога к созданию новых и модернизации уже существующих приложений, предназначенных для ранних версий ОС Windows. Стоит отметить, что в процессе использования поддерживаемых системой вариантов исходные файлы, проекты и решения в программе Visual Studio будут работоспособными, но исходный код может нуждаться в изменениях. Visual Studio построена на архитектуре, поддерживающей возможность использования встраиваемых дополнений— плагинов от сторонних разработчиков, что позволяет расширять возможности среды разработки.

Для написания программы в данной курсовой работе будет использоваться компилятор языка С# - всем доступный Microsoft .NET Framework, а программирование будет вестись в среде Microsoft Visual Studio 2010.  Microsoft Visual Studio 2010 доступна в следующих вариантах:

  • Express – бесплатная среда разработки, включающая только базовый набор возможностей и библиотек.
  • Professional – поставка, ориентированная на профессиональное создание программного обеспечения, и командную разработку, при которой созданием программы одновременно занимаются несколько человек.
  • Premium – издание, включающее дополнительные инструменты для работы и исходным кодом программ и создания баз данных.
  • Ultimate – наиболее полное издание Visual Studio, включающие все доступные инструменты для написания, тестирования, отладки и анализа программ, а также дополнительные инструменты для работы с базами данных и проектирования архитектуры ПО.

Отличительной особенностью среды Microsoft Visual Studio 2010 является то, что она поддерживает работу с несколькими языками программирования и программными платформами.  После запуска Microsoft Visual Studio 2010 появляется следующая стартовая страница, которая показана на рисунке 1.

 

Рис.1.1.  Стартовая страница Visual Studio 2010 Ultimate

 

В качестве используемого издания, была выбрана Visual Studio 2010 Ultimate[1].

 

    1. Windows Presentation Foundation

 

Корпорацией Microsoft предложен новаторский компонентно-ориентированный подход к программированию, который является развитием объектно-ориентированного направления. Согласно этому подходу, интеграция объектов производится на основе интерфейсов, представляющих эти объекты (или фрагменты программ) как независимые компоненты. Такой подход существенно облегчает написание и взаимодействие программных компонент в среде проектирования и реализации. Стандартизируется хранение и повторное использование компонент программного проекта в условиях распределенной сетевой среды вычислений, где различные компьютеры и пользователи обмениваются информацией, например, взаимодействуя в рамках исследовательского или бизнес-проекта.

Существенным преимуществом следует считать и возможность практической реализации принципа "всякая сущность является объектом" в гетерогенной программной среде. Во многом это стало возможным благодаря усовершенствованной, обобщенной системе типизации Common Type System, или CTS, которая будет подробнее рассмотрена в одной из следующих лекций.

Строгая иерархичность организации пространств для типов, классов и имен сущностей программы позволяет стандартизировать и унифицировать реализацию.

WPF включает целый набор высокоуровневых  служб, ориентированных на прикладных программистов.

Существенных изменений WPF в программировании Windows:

• Web-подобная модель компоновки. Вместо того чтобы фиксировать элементы управления на месте с определенными координатами. WPF поддерживает гибкий поток, размещающий элементы управления на основе их содержимого. В результате получается пользовательский интерфейс, который может быть адаптирован для отображения высокодинамичного содержимого или разных языков.

• богатая модель рисования. Вместо рисования пикселей в WPF мы имеем дело с примитивами— базовыми фигурами, блоками текста и прочими графическими ингредиентами. Также имеются такие новые средства, как действительно прозрачные элементы управления, возможность складывать множество уровней с разной степенью прозрачности, а также встроенную поддержку трехмерной графики.

• богатая текстовая модель

• анимация как первоклассная программная концепция. Можно использовать таймер для того, чтобы заставить форму перерисовать себя. Но в WPF анимация — неотъемлемая часть программного каркаса. Анимация определяется декларативно.

• поддержка аудио и видео. WPF включает поддержку воспроизведения любого аудио - или видеофайла, поддерживаемого Windows Media Player, позволяя воспроизводить более одного медиафайла одновременно.

• стили и шаблоны[2].

 

    1. XAML

 

XAML (англ. eXtensible Application Markup Language — расширяемый язык разметки [для] приложений; произносится [замл] или [зэмл]) — основанный на XML язык разметки для декларативного программирования приложений, разработанный Microsoft.

Модель приложений Vista включает объект Application. Его набор свойств, методов и событий позволяет объединить веб-документы в связанное приложение. Объект Application контролирует выполнение программы и генерирует события для пользовательского кода. Документы приложения пишутся на XAML. Впрочем, с помощью XAML описывается, прежде всего, пользовательский интерфейс. Логика приложения по-прежнему управляется процедурным кодом (С#, VB, JavaScript и т. д.). XAML может использоваться как для браузер-базированных приложений, так и для локальных настольных приложений.

XAML включает основные четыре категории элементов: панели, элементы управления, элементы, связанные с документом и графические фигуры. Заявлено 7 классов панелей, которые задают принципы отображения вложенных в них элементов. Для задания положения элементов относительно границ родительской панели используются атрибуты на манер свойств в объектно-ориентированных языках. Подобный синтаксис не очень вяжется с рекомендациями CSS, но будет привычен программистам настольных приложений.

Приложения, объявленные в XAML, могут включать множество страниц. Элемент управления PageViewer позволяет разбивать содержание на страницы и обеспечивает навигацию по ним. Элемент ContextMenu помогает в создании навигационных меню приложения. Код процедурного языка может быть размещён непосредственно в файле XAML или же назначен при сборке проекта[1].

 

 

2. РАЗРАБОТКА ПРОГРАММЫ, МОДЕЛИРУЮЩЕЙ ИГРУ «МОРСКОЙ БОЙ»

 

 

 

В данном разделе описывается разработка программы «Морской бой». Правила данной игры: на правое поле расставляются корабли:

1 корабль — ряд из 4 клеток («линкоры», или «четырёхпалубные»)

2 корабля — ряд из 3 клеток («крейсеры», или «трёхпалубные»)

3 корабля — ряд из 2 клеток («эсминцы», или «двухпалубные»)

4 корабля — 1 клетка («подлодки», или «однопалубные»).

 Корабли можно разворачивать. Затем вы начинаете стрелять  по кораблям компьютера, а он  по вашим. Цель игры первым поразить все корабли компьютера.

Сложность правил: низкая[4].

 

 

2.1.  Разработка интерфейса WPF

 

Конструктор XAML в Visual Studio 2012 предоставляет визуальный интерфейс для облегчения разработки приложений Магазин Windows, построенных с использованием XAML, WPF и Silverlight. Можно создавать пользовательские интерфейсы для приложений, перетаскивая элементы управления с панели элементов и устанавливая свойства в окне свойств. Также можно изменять код XAML непосредственно в представлении XAML[5].

Рабочая область конструктора XAML в Visual Studio состоит из нескольких элементов визуального интерфейса. Они включает монтажную панель, панель элементов, окно "Структура документа", обозреватель решений, окно свойств и редактор XAML. Чтобы открыть конструктор XAML, щелкните правой кнопкой мыши страницу XAML в обозревателе решений и выберите конструктор представлений.

Конструктор XAML предоставляет представление XAML и синхронизированное с ним представление "Конструктор" для отображения визуализируемой разметки XAML приложения. В документе XAML, открытом в Visual Studio, можно переключаться между представлением конструктора и представлением XAML с помощью вкладок Конструктор и XAML. В представлении конструктора окно, содержащее монтажную панель, является активным и может использоваться в качестве основной рабочей области. Его можно использовать для визуального проектирования страницы приложения путем добавления или рисования элементов и последующего их изменения. На рисунке 2 показана монтажная панель в представлении конструктора.

Рис. 2.1. Монтажная панель в представлении конструктора

В представлении XAML окно, содержащее активное окно редактора XAML, и редактор языка XAML являются основными средствами разработки. Язык XAML (расширяемый язык разметки для приложений) предоставляет собой декларативный, основанный на XML словарь для определения пользовательского интерфейса приложения. Представление XAML включает IntelliSense, автоформатирование, подсветку синтаксиса и перемещение по тегам. На рисунке показано представление XAML.

Рис. 2.2. Представление XAML

Обозреватель решений, показанный на рисунке 2.3., обеспечивает упорядоченное представление проектов и их файлов, а также быстрый доступ к связанным к ними командам. В панели инструментов этого окна собраны команды, наиболее часто применяемые к выбираемым в списке элементам. Для доступа к обозревателю решений выберите в меню Вид пункт Обозреватель решений[1].

Рис. 2.3. Обозреватель решений

WPF распознает три типа кнопок: Button, CheckBox и RadioButton. Все эти кнопки  являются наследниками класса ButtonBase.   Класс ButtonBase содержит лишь несколько членов. Он определяет событие Click и добавляет поддержку команд, которые позволяют подключать кнопки к высокоуровневым задачам приложений. Наконец, класс ButtonBase добавляет свойство ClickMode, которое определяет, когда кнопка генерирует событие Click в ответ на действия мыши. По умолчанию используется значение ClickMode.Release, которое означает, что событие Click будет сгенерировано после нажатия и последующего отпускания кнопки мыши. Однако можно сделать и так, чтобы событие Click возникало сразу при нажатии кнопки мыши (ClickMode.Press) или даже когда указатель мыши будет наведен на кнопку и задержится над ней (ClickMode.Hover).

Информация о работе Реализация игры "Морской бой"