Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OOP_PZ.docx
Скачиваний:
2
Добавлен:
12.09.2019
Размер:
927.35 Кб
Скачать

Содержание

Введение 5

1. Анализ технического задания 7

3. Программная реализация 13

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

5. Руковдство по програмному продукту 28

5.1. Руководство программиста 28

5.2 Руководство администратора 29

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

Заключение 31

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

Приложение А. Класс разбора математических функций 33

Приложение Б. Листинг 60

Введение

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

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

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

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

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

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

Целью работы является разработка программы «Генератор математических функций». Также целью работы является развитие навыков самостоятельной и творческой работы и закрепление навыков работы на языке С++.

В мире есть множество программных продуктов, позволяющих выполнять задачи по построению графиков, такие как Mathcad, Matlab, Excel. Если требуется решать задачи связанные только с графиками, то программа «Генератор математических функций» использовать предпочтительней, так как он сконцентрирован только на этой проблеме. Также данное приложение имеет простой пользовательский интерфейс, удобный мастер функций, возможность построения нескольких графиков функций.

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

  1. Анализ технического задания

В курсовом работе необходимо разработать программу «Генератор математических функций».

Для реализации поставленных задач необходимо:

  • Разработать алгоритм ввода математического выражения с помощью мастера функций;

  • Разработать алгоритм построения графика по заданному выражению;

  • Реализовать возможность сохранения построенного графика в файл;

  • Реализовать визуальные компоненты для работы с программой.

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

Данное приложение будет реализовано на мощном и гибком объектно-ориентированном языке программирования С++ [1]. Язык С++ предоставляет все средства для реализации базового и производных классов, а также оптимально использует системные ресурсы, что позволяет сделать приложение не только универсальным, но и не очень требовательным к ресурсам компьютера. Также язык С++ поддерживает платформу .NETFramework, что позволяет использовать приложение на различных персональных и переносных компьютерах, на которых установлена эта платформа.

По сравнению с другими объектно-ориентированными языками С++ обладает несколькими особенностями:

  • Полная поддержка принципов инкапсуляции, наследования и полиморфизма;

  • Полная поддержка классов и объектно-ориентированного программирования, включая наследование реализации и интерфейсов, виртуальные функции и перегрузку операций;

  • Согласованный и четко определенный набор базовых типов;

  • Возможность переопределения пользователем стандартных типов языка и операторов;

  • Автоматическая очистка динамически распределяемой памяти;

  • Полная поддержка библиотеки базовых классов .NET Framework наряду с легким доступом к Windows API;

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

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

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

К числу подобных метрик относится:

  1. Гибкость, которая аккумулирует ряд свойств:

  • Модульность;

  • Изменяемость;

  • Сопровождаемость;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]