Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ооп экзамент.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
235.52 Кб
Скачать

6.Этапы ооп.

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

1. Определение основных понятий предметной области и соответствующих им классов с соответствующими свойствами. Обоснование способов создания объектов.

2. Определение или формулирование принципов взаимодействия классов и взаимодействия объектов в рамках программной системы.

3. Установление иерархии взаимосвязи свойств родственных классов.

4. Реализация иерархии классов посредством механизма наследования.

5. Реализация методов каждого класса.

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

7. Общая характеристика языка С++.

С++. Язык был создан Американским ученым Бьярном Строуструпом в первой половине 80-х годов. Задачи: улучшить С поддержать абстракцию данных поддержать объектно-ориентированное программирование обеспечить максимально возможную эффективность работы программ. Улучшение С выразилось в: - контроль типов параметров - операции работы с памятью (динамич. создание и уничтожение объектов) - совмещение имен функций и операций - встраивание функций в код программы. С был взят в качестве базового языка, потому что он: - многоцелевой, лаконичный и относительно низкого уровня - отвечает большинству задач системного программирования - идет везде и на всем - может быть использован в среде программирования UNIX. Абстракция данных есть метод разработки программ с представлением в ней понятий из прикладной области как пользовательских (user-defined) типов данных. Интерфейс типа данных (спецификация) отделяется от его реализации, что - облегчает понимание программ, позволяя прямо описывать понятие в естественных для него терминах - изменять реализацию типа данных, не задевая пользователей. С++ обеспечивает абстракцию данных, поддерживая следующие понятия и возможности: - конструктор пользовательских типов class - средства управления доступом (public, private) - абстрактные классы - гарантированная инициализация и очистка объектов - пользовательские преобразования типов объектов - параметризованные (родовые) функции и типы данных - обработка исключительных ситуаций. Ключевым понятием в С++ является класс. Классы обеспечивают перечисленные выше возможности. ООП основывается на иерархической организации классов подобно тому, как устанавливается иерархия понятий в реальной жизни. В С++ оно поддерживается понятиями: - производный класс (подкласс) - виртуальная функция (подмена функций).

C++ — компилируемый статически типизированный язык программирования общего назначения.

Поддерживает такие парадигмы программирования как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции. Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так инизкоуровневых языков[1]. В сравнении с его предшественником — языком C, — наибольшее внимание уделено поддержкеобъектно-ориентированного и обобщённого программирования[2].

C++ широко используется для разработки программного обеспечения, являясь одним из самых популярных языков программирования. Область его применения включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений (игр). Существует множество реализаций языка C++, как бесплатных, так и коммерческих и для различных платформ. Например, на платформе x86 это GCCVisual C++Intel C++ Compiler,Embarcadero (Borland) C++ Builder и другие. C++ оказал огромное влияние на другие языки программирования, в первую очередь на Java и C#.

Синтаксис C++ унаследован от языка C. Одним из принципов разработки было сохранение совместимости с C. Тем не менее, C++ не является в строгом смысле надмножеством C; множество программ, которые могут одинаково успешно транслироваться как компиляторами C, так и компиляторами C++, довольно велико, но не включает все возможные программы на C.