Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Загальні принципи і основні елементи об’єктно-орієнтованого програмування



 

Основные этапы развития программирования:

1. Программирование в машинных командах.

2. Программирование на языках низкого уровня (ассемблер).

3. Процедурное программирование (BASIC, FORTRAN, Pascal, C).

4 Объектно-ориентированное программирование (C++, Object Pascal, ADA).

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

- проблема надежности;

- проблема модернизации;

- проблема сложности.

Основными элементами ООП являются:

1) инкапсуляция, которая подразумевает:

- соединение (агрегацию) разнотипных данных и процедур их обработки в одном
объекте;

- средства ограничения доступа к данным и процедурам объекта;

2) наследование, которое может быть простым и множественным.

3) полиморфизм, в том числе:

- простой полиморфизм функций;

- перегруженные операции;

- виртуальные функции;

- шаблоны функций и классов.

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

Процедурная абстракция требует раздельного рассмотрения цели процедуры и внутренней реализации процедуры. Под процедурой понимается некоторая программная единица, содержащая исполняемый код (функция, в терминах языка С/С++).

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

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

Основные принципы и понятия ООП (объект, класс, наследование) появились в языке Симула-67 в 1967 г. В версии языка Smalltalk-80 была высказана еще одна важная идея ООП: жизнь объектов состоит в том, что они посылают друг другу сообщения. Идея обмена сообщениями легла в основу операционных систем типа Windows, где объекты-окна посылают и получают сообщения.

 

3. Типи та класи у сучасній мові програмування. Взаємовідношення понять "клас" та
"об’єкт"

 

Все типы, используемые в С++, делятся на 3 вида:

- встроенные (базовые),

- производные (указатели и ссылки),

- не предопределенные (пользовательские, в т.ч. классовые).

Не предопределенные типы относятся к одной из следующих категорий:

enum - перечисления,

struct - структуры,

class - классы,

union - объединения.

Класс является обобщением понятия типа данных. Класс представляет собой описание структуры, свойств и поведения объекта.

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

Класс образует свое пространство имен.

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

class имя_класса

{ объявления данных

объявления функций

другие объявления и определения

};

Объявление класса, также как и любое другое объявление, является оператором и завершается символом "точка с запятой".

Объявляемый компонент может быть указателем или ссылкой. Нельзя объявлять компонент, который является объектом этого же класса.

Каждый объявляемый компонент класса имеет один из атрибутов доступа (private, protected, public), устанавливающих правила доступа к данному компоненту. Последнее относится и к данным, и к функциям.

Объявляемый в классе компонент может быть не статическим или статическим.

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.