Объектно-ориентированное программирование на языке С++. Лясин Д.Н - 11 стр.

UptoLike

Составители: 

11
Когда мы абстрагируемся от проблемы, мы предполагаем игнорирование ря-
да подробностей с тем, чтобы свести задачу к более простой. Задача абстрагиро-
вания и последующей декомпозиции типична для процесса создания программ.
Декомпозиция используется для разбиения программ на компоненты, которые за-
тем могут быть объединены, позволив решить основную задачу, абстрагирование
же предлагает продуманный
выбор таких компонент. Последовательно выполняя
то один, то другой процесс можно свести исходную задачу к подзадачам, решение
которых известно. Для одного и того же моделируемого в программе объекта в
зависимости от решаемой задачи необходимо учитывать различные свойства и
характеристики, то есть рассматривать его на различных уровнях абстракции. На-
пример, если
мы будем рассматривать объект «Файл» в контексте разработки тек-
стового редактора, то нас в первую очередь будут интересовать такие параметры
объекта, как тип представления информации в файле, методы чтения и записи
информации из/в файл, используемые промежуточные буферы для хранения ин-
формации. Иными словами, для данной предметной области интерес представляет
внутреннее
содержимое файла. Если же тот же объект «Файл» рассматривать в
контексте разработки файлового менеджера, то на первый план выходят свойства
объекта, характеризующие его как элемент файловой системы (имя файла, путь к
файлу, атрибуты, права доступа и т.п.). Выбор правильного набора абстракций
для заданной предметной области представляет собой главную задачу
объектно-
ориентированного проектирования.
Инкапсуляция есть объединение в едином объекте данных и кодов, опери-
рующих с этими данными. В терминологии объектно-ориентированного програм-
мирования данные называются членами данных (data members) объекта, а коды -
объектными методами иди функциями-членами (methods, member functions)
Инкапсуляция является важным принципом ООП, организующим защиту
информации от ненужных и случайных модификаций, что
обеспечивает целост-
ность данных и упрощает отладку программного кода после изменений.
    Когда мы абстрагируемся от проблемы, мы предполагаем игнорирование ря-
да подробностей с тем, чтобы свести задачу к более простой. Задача абстрагиро-
вания и последующей декомпозиции типична для процесса создания программ.
Декомпозиция используется для разбиения программ на компоненты, которые за-
тем могут быть объединены, позволив решить основную задачу, абстрагирование
же предлагает продуманный выбор таких компонент. Последовательно выполняя
то один, то другой процесс можно свести исходную задачу к подзадачам, решение
которых известно. Для одного и того же моделируемого в программе объекта в
зависимости от решаемой задачи необходимо учитывать различные свойства и
характеристики, то есть рассматривать его на различных уровнях абстракции. На-
пример, если мы будем рассматривать объект «Файл» в контексте разработки тек-
стового редактора, то нас в первую очередь будут интересовать такие параметры
объекта, как тип представления информации в файле, методы чтения и записи
информации из/в файл, используемые промежуточные буферы для хранения ин-
формации. Иными словами, для данной предметной области интерес представляет
внутреннее содержимое файла. Если же тот же объект «Файл» рассматривать в
контексте разработки файлового менеджера, то на первый план выходят свойства
объекта, характеризующие его как элемент файловой системы (имя файла, путь к
файлу, атрибуты, права доступа и т.п.). Выбор правильного набора абстракций
для заданной предметной области представляет собой главную задачу объектно-
ориентированного проектирования.
    Инкапсуляция есть объединение в едином объекте данных и кодов, опери-
рующих с этими данными. В терминологии объектно-ориентированного програм-
мирования данные называются членами данных (data members) объекта, а коды -
объектными методами иди функциями-членами (methods, member functions)
    Инкапсуляция является важным принципом ООП, организующим защиту
информации от ненужных и случайных модификаций, что обеспечивает целост-
ность данных и упрощает отладку программного кода после изменений.

                                      11