Курсовая работа: Разработка специализированного программного модуля для решения указанной задачи

Содержание

Введение

1. Выбор технологии, языка и среды программирования

2. Анализ и уточнение требований к программному продукту

2.1 Анализ процесса обработки информации и выбор структур данных для ее хранения

2.2 Выбор методов и разработка основных алгоритмов решения задачи

3. Разработка структурной схемы программного продукта

4. Проектирование интерфейса пользователя

4.1 Построение графа диалога

4.2 Разработка форм ввода-вывода информации

5. Выбор стратегии тестирования и разработка тестов

Заключение

Список литературы

Приложения


Введение

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

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

В первом разделе представлен выбор технологии, языка и среды программирования.

Во втором представлен анализ и уточнение требований к программному продукту.

В третьем продемонстрирована структурная схема программного продукта.

В четвертом разделе описан интерфейс пользователя (граф диалога и формы ввода-вывода информации.)

В последнем разделе "Выбор стратегии тестирования и разработка тестов" проводится тестирование программы при различных исходных данных.


1. Выбор технологии, языка и среды программирования

В соответствие с заданием языком программирования был выбран С++. Для реализации программы использовалось объектно-ориентированное программирование.

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

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

Прообразом класса в C++ является структура в С. В то же время в C++ структура обрела новые свойства и теперь является частным видом класса, все элементы которого по умолчанию являются открытыми. Со структурой struct в C++ можно делать все, что можно делать с классом. Тем не менее в C++ структуры обычно используют лишь для удобства работы с небольшими наборами данных без какого-либо собственного поведения.

Конкретные переменные типа данных "класс" называются экземплярами класса, или объектами. Программы, разрабатываемые на основе концепций ООП, реализуют алгоритмы, описывающие взаимодействие между объектами.

Класс содержит константы и переменные, называемые полями, а также выполняемые над ними операции и функции. Функции класса называются методами. Предполагается, что доступ к полям класса возможен только через вызов соответствующих методов. Поля и методы являются элементами, или членами класса. Эффективным механизмом ослабления связанности между компонентами в случае объектно-ориентированной декомпозиции является так называемая инкапсуляция. Инкапсуляция - это ограничение доступа к данным и их объединение с методами, обрабатывающими эти данные. Доступ к отдельным частям класса регулируется с помощью специальных ключевых слов: public (открытая часть), private (закрытая часть) и protected (защищенная часть). Методы, расположенные в открытой части, формируют интерфейс класса и могут свободно вызываться клиентом через соответствующий объект класса. Доступ к закрытой секции класса возможен только из его собственных методов, а к защищенной - из его собственных методов, а также из методов классов-потомков. С ООП связаны еще два инструмента, грамотное использование которых повышает качество проектов: наследование классов и полиморфизм. Наследование — механизм получения нового класса из существующего. Производный класс создается путем дополнения или изменения существующего класса. Благодаря этому реализуется концепция повторного использования кода. С помощью наследования может быть создана иерархия родственных типов, которые совместно используют код и интерфейсы. Полиморфизм дает возможность создавать множественные определения для операций и функций. Какое именно определение будет использоваться, зависит от контекста программы. Вы уже знакомы с одной из разновидностей полиморфизма в языке C++ — перегрузкой функций. Программирование с классами предоставляет еще две возможности: перегрузку операций и использование так называемых виртуальных методов. Перегрузка операций позволяет применять для собственных классов те же операции, которые используются для встроенных типов C++. Виртуальные методы обеспечивают возможность выбрать на этапе выполнения нужный метод среди одноименных методов базового и производного классов.


--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 346
Бесплатно скачать Курсовая работа: Разработка специализированного программного модуля для решения указанной задачи