русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Основные принципы ООП.


Дата добавления: 2013-12-23; просмотров: 756; Нарушение авторских прав


1. Инкапсуляция данных (упрятывание данных, абстрактные типы данных).

То есть определение типов данных и возможных способов манипуляции ими. Классический пример – стек. Задается структура данных (например, одномерный массив) и процедуры помещений в стек, выталкивания из верхушки стека и проверка стека на пустоту. Другие способы доступа к информации стека запрещены. То есть, нельзя, например, обратиться напрямую к какому-то элементу соответствующего массива. Инкапсуляция, четко определяя границы объектов, что «укрупняет» систему и упрощает работу с ней. Впрочем, принципы инкапсуляции сами по себе нашли наилучшее воплощение, среди практических языков, в процедурном языке Ада.

 

2. Наследование.Совместно с инкапсуляцией наследование составляет два основных принципы ООП. Именно их сочетание и дало качественно новый подход к программированию.

Различные виды отношений между объектами:

1). Генерация is-a “есть некоторый”.

2). Классификация instance of “быть примером”.

3). Агрегация part of “быть частью”.

4). Ассоциация member of “быть элементом”.

 

На практике традиционное программирование для борьбы со сложностью, занимаясь декомпозицией и классификацией, использует отношения «быть частью» - «быть элементом». В ООП прежде всего используются “есть некоторый” - “быть примером”.

Традиционный подход к декомпозиции на примере завода можно представить так

 

 
 


При ООП используется «классификационный» подход:

 
 

 

 


Стрелками показано отношение «есть некоторый».

Такой подход дает возможность нижестоящим объектам наследовать свойства вышестоящих. В пересчете на программирование – использовать программы, «обслуживающие» вышестоящий объект.

 

3. Механизм обмена сообщениями. Объекты обмениваются сообщениями. Учитывая те же реалии прямого моделирования можно сказать, что механизм обмена сообщениями может существенно отличаться от механизмов передачи параметров и вызова процедур. Кстати, «передачи параметров» могут быть независимы по времени от «вызовов процедур».



 

4. Позднее связывание. Позднее связывание - это и методологический и технический принцип, который исходит из того, что решения следует принимать не раньше того момента, когда это необходимо, чтобы учесть сложившуюся на этот момент ситуацию. Мы можем закладывать в алгоритм, скажем, «долларовый эквивалент», а конкретный пересчет произойдет в момент расчета. Или, например, объект 5 может в разных контекстах восприниматься по-разному: как число, строка, символ и т.д., то есть менять тип.

Кстати, позднее связывание - это один из аргументов за режим интерпретации.

В настоящее время многие прикладные языки, прежде всего связанные с интернетом, строятся с оглядкой на ООП. Так что ест надежды.

 



<== предыдущая лекция | следующая лекция ==>
Объектно-ориентированное программирование | Способы предачи информации


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.302 сек.