ПОЗНАВАТЕЛЬНОЕ Сила воли ведет к действию, а позитивные действия формируют позитивное отношение Как определить диапазон голоса - ваш вокал
Игровые автоматы с быстрым выводом Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими Целительная привычка Как самому избавиться от обидчивости Противоречивые взгляды на качества, присущие мужчинам Тренинг уверенности в себе Вкуснейший "Салат из свеклы с чесноком" Натюрморт и его изобразительные возможности Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д. Как научиться брать на себя ответственность Зачем нужны границы в отношениях с детьми? Световозвращающие элементы на детской одежде Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия Как слышать голос Бога Классификация ожирения по ИМТ (ВОЗ) Глава 3. Завет мужчины с женщиной 
Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д. Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу. Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар. | ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ ПРОГРАММЫ НА ЯЗЫКЕ UML ВВЕДЕНИЕ Одна из главных человеческих потребностей – потребность в развлечениях. Для ее удовлетворения на протяжения всего своего существования люди придумывали различные способы веселого проведения досуга. Научно-технический прогресс открыл новую платформу для создания развлечений – компьютерные игры. Практически любая компьютерная игра на сегодняшний день в той или иной мере является цифровым представлением некоторых явлений, процессов или объектов реального мира. В доказательство этому можно привести наличие такого свойства любой динамической компьютерной игры как реалистичность. Чем лучше реалистичность, тем, как правило, лучше игра. Данный факт не является чем-то парадоксальным, особенно если вспомнить что человек живет в реальном мире, а когда у него появляется возможность сотворить виртуальный, то он делает его по образу и подобию реального, исключая либо не очень важные моменты, требующие высокой производительности, либо моменты, мешающие реализации условий поставленной задачи. В понятие реалистичности вкладывается не только фотографическое качество картинки, выводимой на экран монитора, но и то, насколько хорошо отображены физические свойства предметов, такие как масса, скорость, ускорение и явления, как соударение, взаимопритяжение и т.д. Особенно это важно для игр-симуляторов, в том числе для игр-гонок, имеющих элемент динамики. К ним предъявляются очень большие требования, так как автогонки - занятие из реального мира, где все может решить любой закон физики. Естественно, вид компьютерной реализации любой динамической игры по ряду объективных причин должен несколько отличаться от ее традиционного вида: не считая обхода проблем с производительностью, здесь следует учитывать такие моменты: игрок должен быть избавлен от деталей (присутствующих в «живой» игре из необходимости), мешающих восприятию информации на экране. Курсовой проект реализован в среде С#. C# — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков C++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем. Основная идея ООП: программа состоит из группы объектов, часто связанных между собой. В С# объекты описываются при помощи нового типа данных class. Класс включает в себя набор переменных (данных) и операций (методов или функций-членов), которые действуют на эти переменные. Полученными объектами можно управлять при помощи сообщений. В ООП объекты включают в себя не только данные (данные-члены), но и методы (функции-члены) воздействия на эти данные. Эти две части в сочетании образуют функциональную единицу программы. Другими словами, объекты содержат данные и методы работы с этими данными. ООП представляет собой технику программирования, которая позволяет рассматривать основные идеи как множество объектов. Используя объекты, можно представить задачи, которые необходимо выполнить, их взаимодействие и любые заданные условия, которые должны быть соблюдены. Структура данных часто образует основы объектов; таким образом в С или С# тип struct может образовывать элементарный объект. Связь с объектом можно организовать при помощи сообщений. Когда объект получает сообщение, вступают в действие методы, содержащиеся в объекте. Методы (их иногда называют функциями-членами) аналогичны функциям процедурно-ориентированного программирования ПОСТАНОВКА ЗАДАЧИ Разработать компьютерную игру «Захватывающие гонки». Игра должна быть реализована на языке программирования C#. Данное приложение должно представлять из себя игру в жанре «гонки», реализованную для запуска на компьютере и мобильных устройствах. Приложение должно выполнять следующие функции: - перемещение игрового объекта (автомобиля) c помощью экранных кнопок - возможность стрельбы как модели игрока, так и модели противников - отображение дополнительных игровых объектов, отражающихся на игровом процессе (бочки и т.д) - игровой мир с возможностью разрушение ландшафта (например, дороги) - уровневая система (уровни открываются по мере прохождения). Программа должна состоять из блоков и иметь следующие их наименования: - Блок «Автомобиль» - Блок «Противники» - Блок «Стрельба» - Блок «Объекты» - Блок «Появление объектов» - Блок «Разрушение дороги». - Блок «Повреждения врагов». Игра должна иметь простой и понятный интерфейс, быть легка в использовании для неопытных пользователей, недавно освоивших работу за компьютером или мобильным устройством, а также низкие системные требования, чтобы для работы с программой требовалось самое простое устройство. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ ПРОГРАММЫ НА ЯЗЫКЕ UML 2.1 Диаграммы классов Центрально место в ООП занимает разработка логической модели системы в виде диаграммы классов. Диаграмма классов (class diagram) служит для представления статической структуры модели системы в терминологии классов ООП. Диаграмма классов может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а так же описывать их внутреннюю структуру и типы отношений. Диаграммы классов представляют собой граф, вершинами которого являются элементы типа «классификатор», связанные различными типами структурных отношений. Диаграмма классов может также содержать интерфейсы, пакеты, отношения и даже отдельные экземпляры, такие как объекты и связи. Ниже представлены классы, которые содержит приложение «Склад спортинвентаря». Основными классами являются: Avtomobil.cs, Vrag.cs, Strelba.cs, Objects.cs, SpawnObjets.cs, Doroga.cs, VragDamage.cs. В них описываются свойства компонентов приложения. Помимо основных классов приложение также содержит дополнительные связующие классы.  Рисунок 2.1 – Диаграмма классов программы
2.2 Диаграмма вариантов использования. Диаграмма вариантов использования - это UML диаграмма, с помощью которой в графическом виде можно изобразить требования к разрабатываемой системе. Диаграмма вариантов использования – это исходная концептуальная модель проектируемой системы, она не описывает внутреннее устройство системы. Диаграммы вариантов использования предназначены для: - определить общие границы и контекст моделируемой предметной области; - сформулировать общие требования к функциональному поведению проектируемой системы; - разработать исходную концептуальную модель системы для ее последующей детализации в форме логических и физических моделей; - подготовить исходную документацию для взаимодействия разработчиков системы с ее заказчиками и пользователями. Диаграмма вариантов использования состоит из ряда элементов. Основными элементами являются: варианты использования или прецедент (use case), актер или действующее лицо и отношения между актерами и вариантами использования .  Рисунок 2.2 – Диаграмма вариантов использования. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ 3.1 Общие сведения. Приложение называется «Захватывающие гонки», игра написана на языке программирования С# и работает в современных версиях операционной системы Windows (XP, Vista, 7, 8), а также на мобильных устройствах с ОС Android (версии 2.3 и выше). Для успешной работы программы необходимо иметь исполняемый файл Gonki.exe, папку Gonki_Data с файлами игры (для Android необходимо установить файл Gonki.apk. Папка Gonki_Data должна находиться внутри корневой директории программы. Windows-версия игры имеет оконный интерфейс, Android-версия – полноэкранный. Листинг программы приведен в приложении. Т.к приложение является игрой в популярном жанре «гонки», имеет множество аналогов, самые известные из которых – игры Need for Speed, Asphalt, GT Racing, Real Racing. 3.2 Функциональное назначение. Приложение представляет из себя игру в жанре «гонки», реализованную для запуска на компьютере и мобильных устройствах. Приложение реализует следующие функции: перемещение игрового объекта (автомобиля) c помощью экранных кнопок; возможность стрельбы как модели игрока, так и моделей проитвников; отображение дополнительных игровых объектов, отражающихся на игровом процессе (бочки и т.д); игровой мир с возможностью разрушение ландшафта (например, дороги); уровневая система (уровни открываются по мере прохождения). Игра является тест-проектом и не представляет большой практической ценности как программный продукт, однако функциональные алгоритмы, реализованные в данном приложении, могут быть использованы и в более серьезных проектах. |