русс | укр

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

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

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

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


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

ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ ПРОГРАММ


Дата добавления: 2014-02-04; просмотров: 873; Нарушение авторских прав


ПРИНЦИПЫ РАБОТЫ

ОПРЕДЕЛЕНИЕ ОБЛАСТИ ВИДИМОСТИ КЛАССА

Object Pascal предоставляет дополнительный контроль над доступностью членов классов (полей и методов) с помощью директив private, protected, public, published. Синтаксис использования этих директив следующий:

type

TMyClass = class private

AprivateVariable: Integer; AnotherPrivateVariable: Boolean; protected

procedure AProtectedProcedure; function ProtectMe: Byte; public

constructor APublicContructor; destructor APublicKiller; published property AProperty

read AprivateVariable write APrivateVariable; end;

За каждой из директив может следовать любое необходимое количество объявлений полей или методов. Эти директивы имеют следующий смысл.

private - эта часть объекта доступна только для кода, нахо­дящегося в одном модуле с другим кодом данного объекта. Директива private скрывает особенности реализации объекта от поль­зователей и защищает члены этого объекта от непосредственного доступа и изменения извне.

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

public - описанные подобным образом члены объекта доступ­ны в любом месте данной программы. В этой секции всегда описы­ваются конструкторы и деструкторы.

published - для этой части объекта при компиляции будет сгенерирована информация о типе времени исполнения. Это даст возможность другим частям приложения получать информацию о части объекта, описанной в этой секции. В частности, подобная информация используется утилитой Object Inspector при построе­нии списков свойств объектов.

В Object Pascal разрешается многократно объявлять любую секцию, причем порядок следования секций не имеет значения. Любая секция может быть пустой.



Технология объектно-ориентированного программиро­вания предполагает, что любая процедура или функция в програм­ме представляет собой метод объекта некоторого класса, причем класс должен формироваться в программе, как только возникает необходимость описания новых объектов программирования. Каж­дый новый шаг в разработке алгоритма также должен представлять собой разработку нового класса на основе уже существующих классов. Таким образом, формируется иерархия классов и, в конце концов, вся программа будет представлять собой объект некоторо­го класса с единственным методом run (выполнить).

В технологии объектно-ориентированного программирования схема взаимодействия методов и данных принципиально иная, чем при технологии структурного программирования: метод, вызывае­мый для одного объекта, как правило, не вызывает другой метод непосредственно. Для начала он должен иметь доступ к другому объекту (создать, получить указатель, использовать внутренний объект в текущем объекте и т. д.), после чего он уже может вызвать для него один из известных методов. Таким образом, структура программы определяется взаимодействием объектов различных классов между собой. Взаимосвязь между объектами осуществля­ется посредством сообщений.

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

К достоинствам объектно-ориентированного программирова­ния следует отнести:

исключение избыточного кода;

возможность защиты объектов от кода других частей программы;

поддержка повторного использования отдельных составляю­щих программ;

создание более открытых систем;

экономия времени за счет построения программы из готовых, отлаженных частей;

К недостаткам объектно-ориентированного программирования относят:

ухудшение быстродействия системы, которое обусловлено по­сылкой сообщений от одного объекта к другому. Обращение к ме­тоду может занимать в 2-2,5 раза больше времени, чем к обычной подпрограмме;

необходимость создания методов для доступа к запрещенным переменным объекта, а многочисленность методов приводит к из­лишнему количеству вызовов.

Тем не менее, достоинства объектно-ориентированных систем, как правило, перевешивают перечисленные недостатки. Опыт так­же показывает, что размер исполнимых модулей таких систем обычно меньше.

 



<== предыдущая лекция | следующая лекция ==>
СВОЙСТВА | ТЕСТИРОВАНИЕ


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


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

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

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


 


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

 
 

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

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