Автор: Пользователь скрыл имя, 19 Февраля 2013 в 16:09, курсовая работа
Основной целью этой курсовой работы является практическое освоение методики проектирования программных комплексов на базе объектно-ориентированного подхода.
Объектно-ориентированный подход основан на систематическом использовании моделей для языково-независимой разработки программной системы. В формулировке цели проекта участвуют предметы и понятия реального мира, имеющие отношение к разрабатываемой программной системе. При объектно-ориентированном подходе эти предметы и понятия заменяются их моделями, т.е. определенными формальными конструкциями, представляющими их в программной системе.
Введение…………………………………………………………………………..3
1.Аналитическая часть……………………………………………....5
1.1 Анализ и описание предметной области проекта…………………………..5
1.2 Основные понятия и концепция, используемые в курсовой работе………5
1.2.1 Объекты и классы…………………………………………………………...5
1.2.2 Атрибуты объектов………………………………………………………..7
1.2.3 Операции и методы…………………………………………………………8
1.2.4 Зависимости между классами (объектами)……………………………....11
Агрегация………………………………………………………………….11
Обобщение и наследование………………………………………………12
1.3 Разработка объектной модели………………………………………………14
2 Реализация объектной модели на языке программирования С++…………………………………………….....15
2.1 Реализация класса……………………………………………………………15
2.2.1 Порождение объектов……………………………………………………..15
2.2.2 Использование конструктора и деструктора…………………………….15
2.2.3 Использование простого и множественного наследования…………….16
3. Итоговый код программы………………………………………19
4. Результат работы программы…………………………..……..22
Заключение……………………………………………………………………..23
Список литературы…………………………………………………………….24
И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
Восточно-Казахстанский государственный технический
университет им. Д. Серикбаева
Факультет информационных технологий и энергетики
Кафедра математического и компьютерного моделирования
Курсовая работа
ПО ОБЪЕКТНО-ОРИЕНТИРОВАННОМУ ПРОГРАММИРОВАНИЮ: РЕАЛИЗАЦИЯ ПРОЕКТА НА ЯЗЫКЕ с++ НА ТЕМУ «аРАБСКАЯ СКАЗКА»
Выполнил: Мажибаева Марал
Курс 2
Шифр 050705
г. Усть-Каменогорск
Введение…………………………………………………………
1.Аналитическая часть……………………………………………....5
1.1 Анализ и описание предметной области проекта…………………………..5
1.2 Основные
понятия и концепция,
1.2.1 Объекты
и классы…………………………………………………………
1.2.2 Атрибуты
объектов……………………………………………………….
1.2.3 Операции и методы…………………………………
1.2.4 Зависимости между классами (объектами)……………………………....11
1.3 Разработка объектной модели………………………………………………14
2 Реализация
объектной модели на языке
программирования С++…………………………
2.1 Реализация класса…………………………………
2.2.1 Порождение объектов……………………………
2.2.2 Использование конструктора и деструктора…………………………….15
2.2.3 Использование простого и
множественного наследования………
3. Итоговый код программы……………………
4. Результат работы программы…………………………..……..22
Заключение……………………………………………………
Список литературы…………………………………
Основной целью этой курсовой работы является практическое освоение методики проектирования программных комплексов на базе объектно-ориентированного подхода.
Объектно-ориентированный
подход основан на систематическом
использовании моделей для
Модель
содержит не все признаки и свойства
представляемого ею предмета (понятия),
а только те, которые существенны
для разрабатываемой
– уменьшение сложности программного обеспечения;
– повышение надежности программного обеспечения;
– обеспечение возможности
– обеспечение возможности
Систематическое
применение объектно-ориентированного
подхода позволяет
В одном персидском городе жил бедный портной Хасан. У него были жена и сын по имени Аладдин. Аладдин не хотел ничему учиться. Скоро Хасан заболел с горя и умер. Тогда его жена продала все, что после него осталось, и стала прясть хлопок и продавать пряжу, чтобы прокормить себя и сына.
Так прошло много времени. Аладдину исполнилось пятнадцать лет. И вот однажды, когда он играл на улице с мальчишками, к ним подошел человек в красном шелковом халате и большой белой чалме.
Этот человек был магрибинец — житель Магриба. И был он волшебником не добрым. Он приехал сюда, чтобы найти пещеру с кладом, где лежит волшебная лампа. Он знал, что его может достать только мальчик по имени Аладдин. Он обманом приводит в пещеру. Аладдин проходит все трудности и находит лампу, но не отдает его магрибинцу. За это волшебник его оставляет в пещере.
Но ему теперь помогает Джин, который появился из лампы, которую Аладдин нечаянно потер рукой. После этого он собирается жениться на дочери султана Жасмин, но ему мешают злые недруги и волшебник. Но в конце концов он при помощи своих друзей - Джина из лампы, Абу и ковра-самолета - достигает своей цели и живет со своей Жасмин долго и счастливо.
1.2.1 Объекты и классы
Объектная
модель описывает структуру объектов,
составляющих систему, их атрибуты, операции,
взаимосвязи с другими
По определению будем называть объектом понятие, абстракцию или любую вещь с четко очерченными границами, имеющую смысл в контексте рассматриваемой прикладной проблемы. Использование объектов преследует две цели:
– понимание прикладной задачи (проблемы);
– введение основы для реализации на компьютере.
Цель разработки объектной модели – описать объекты, составляющие в совокупности проектируемую систему, а также выявить и указать различные зависимости между объектами.
Рисунок 1. Пример класса и объекта этого класса
Объединение объектов в классы позволяет ввести в задачу абстракцию и рассмотреть ее в более общей постановке. Класс имеет имя, которое относится ко всем объектам этого класса. Кроме того, в классе вводятся имена атрибутов, которые определены для объектов.
Выделим объекты по нашей истории. Волшебник рассказывает Аладдину о волшебной лампе. Также и сам ищет лампу. Аладдин идет искать лампу. В лампе обитает Джин, который помогает Аладдину бороться со злом и осуществляет желания своего хозяина. Волшебник обманывает султана и хочет жениться на принцессе, творит зло. Аладдин спасает принцессу, и принцесса влюбляется в Аладдина.
Таким образом, выделяются основные классы:
1.2.2 Атрибуты объектов
Атрибут – это значение, характеризующее объект в его классе. Примерами атрибутов являются:
– имя, характеристика, образ (атрибуты объектов класса Аладдин);
– происхождение, возраст, мощь (атрибуты объектов класса Джин) и т.д.
Среди атрибутов различаются постоянные атрибуты (константы) и переменные атрибуты. Постоянные атрибуты характеризуют объект в его классе (например, номер счета, категория, имя человека и т.п.). Текущие значения переменных атрибутов характеризуют текущее состояние объекта (например, баланс счета, возраст человека и т.п.); изменяя значения этих атрибутов, мы изменяем состояние объекта.
Атрибуты перечисляются во второй части прямоугольника, изображающего класс (см. рисунок 1). Иногда указывается тип атрибутов (каждый атрибут – это некоторое значение) и начальное значение переменных атрибутов (совокупность начальных значений этих атрибутов задает начальное состояние объекта).
Следует отметить, что, говоря об объектах и их классах, не подразумевают никакого объектно-ориентированного языка программирования. Это, в частности, выражается в том, что на данном этапе разработки программной системы следует рассматривать только такие атрибуты, которые имеют смысл в реальности (все атрибуты объектов класса счет, обладают этим свойством).
Выделим атрибуты объектов по нашей истории:
1.2.3 Операции и методы
Операция – это функция (или преобразование), которую можно применять к объектам данного класса. Примерами операций являются (для объектов класса Аладдин)борется с волшебником, ищет лампу, спасает принцессу, дружит с Джином (см. рисунок 1).
Все объекты данного класса используют один и тот же экземпляр каждой операции (т.е. увеличение количества объектов некоторого класса не приводит к увеличению количества загруженного программного кода). Объект, из которого вызвана операция, передается ей в качестве ее неявного аргумента (параметра).
Одна и та же операция может, вообще говоря, применяться к объектам разных классов: такая операция называется полиморфной, так как она может иметь разные формы для разных классов. Например, для объектов классов “вектор” и “комплексное число” можно определить операцию +; эта операция будет полиморфной, так как сложение векторов и сложение комплексных чисел, вообще говоря, разные операции.
Каждой
операции соответствует метод –
реализация этой операции для объектов
данного класса. Таким образом, операция
– это спецификация метода, метод
– реализация операции. Например, в
классе файл может быть определена
операция печать (print). Эта операция
может быть реализована разными
методами: (а) печать двоичного файла;
(б) печать текстового файла
и др. Логически эти методы выполняют одну
и ту же операцию, хотя реализуются они разными
фрагментами кода.
Каждая
операция имеет один неявный аргумент
– объект, к которому она применяется.
Кроме того, операция может иметь
и другие аргументы (параметры). Эти
дополнительные аргументы параметризуют
операцию, но не связаны с выбором
метода. Метод связан только с классом
и объектом (некоторые объектно-
Операция (и реализующие ее методы) определяется своей сигнатурой, которая включает, помимо имени операции, типы (классы) всех ее аргументов и тип (класс) результата (возвращаемого значения). Все методы, реализующие операцию должны иметь такую же сигнатуру, что и реализуемая ими операция.
Операции перечисляются в третьей части прямоугольника (см. рисунок 2), описывающего класс. В графическом языке технологии OMT тип любого объекта данных указывается вслед за именем этого объекта после двоеточия.
Рисунок 2. Графическое изображение объектной модели
1.2.4 Зависимости между классами (объектами)
С каждым объектом связана структура данных, полями которой являются атрибуты этого объекта и указатели функций (фрагментов кода), реализующих операции этого объекта. Таким образом, объект – это некоторая структура данных, тип которой соответствует классу этого объекта.
Между объектами
можно устанавливать зависимост
В языке программирования Си++ зависимости между классами (объектами) реализуются с помощью ссылок (указателей) из одного класса (объекта) на другой. Представление зависимостей с помощью ссылок обнаруживает тот факт, что зависимость является свойством пары классов, а не какого-либо одного из них, т.е. зависимость – это отношение.
Информация о работе Реализация проекта на языке С++ на тему «Арабская сказка»