Компонентный Паскаль/Особенности методов и свойств: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Строка 1: Строка 1:
__TOC__
__TOC__
== Методы и свойства ==
== Методы и свойства ==
Методы и свойства уже частично рассмотрены ранее. Методы -- это процедуры объектов, а свойства -- поля записей, выраженные через объектный подход. Способы объявления полей и свойств примерно одинаковые, и в КП трудно провести грань, когда поле становится свойством, а процедура методом. Внутри модуля всё выглядит как обычный процедурный код. Снаружи модуля всё начинает выглядеть как объект. Вместо слово "объект" можно говорить "класс", но даже в названии парадигмы -- "объектно-ориентированное программирование" (ООП) слова "класс" нет. [[Компонентно-ориентированное программирование]] выходит за рамки простого ООП именно за счёт того, что основной единицей компиляции является модуль. Он и ограничивает объект. И такое совмещение (с дополнительными условиями взаимодействия между модулями) и порождает понятие "''компонент''".
Методы и свойства уже частично рассмотрены ранее. Методы -- это процедуры объектов, а свойства -- поля записей, выраженные через объектный подход. Способы объявления полей и свойств примерно одинаковые, и в КП трудно провести грань, когда поле становится свойством, а процедура методом. Внутри модуля всё выглядит как обычный процедурный код. Снаружи модуля всё начинает выглядеть как объект. Вместо слово "объект" можно говорить "класс", но даже в названии парадигмы -- "объектно-ориентированное программирование" (ООП) слова "класс" нет. [[Компонентно-ориентированное программирование]] выходит за рамки простого ООП именно за счёт того, что основной единицей компиляции является модуль. Он и ограничивает объект. И такое совмещение (с дополнительными условиями взаимодействия между модулями) и порождает понятие "''компонент''". Компонент может быть как в виде исходного текста, так и уже в виде скомпилированного модуля, и отличие от динамически связываемой библиотеки ("dynamic link library", DLL или "shared library", "so" -- "разделяемая библиотека") для задействования компонента используется среда КП, а не средства операционной системы, что позволяет осуществлять дополнительный контроль. Но с помощью КП можно создавать и DLL, но надо понимать, что тогда эти дополнительные возможности контроля уже не будут задействованы.




{{BookCat}}
{{BookCat}}

Версия от 10:15, 22 апреля 2015

Методы и свойства

Методы и свойства уже частично рассмотрены ранее. Методы -- это процедуры объектов, а свойства -- поля записей, выраженные через объектный подход. Способы объявления полей и свойств примерно одинаковые, и в КП трудно провести грань, когда поле становится свойством, а процедура методом. Внутри модуля всё выглядит как обычный процедурный код. Снаружи модуля всё начинает выглядеть как объект. Вместо слово "объект" можно говорить "класс", но даже в названии парадигмы -- "объектно-ориентированное программирование" (ООП) слова "класс" нет. Компонентно-ориентированное программирование выходит за рамки простого ООП именно за счёт того, что основной единицей компиляции является модуль. Он и ограничивает объект. И такое совмещение (с дополнительными условиями взаимодействия между модулями) и порождает понятие "компонент". Компонент может быть как в виде исходного текста, так и уже в виде скомпилированного модуля, и отличие от динамически связываемой библиотеки ("dynamic link library", DLL или "shared library", "so" -- "разделяемая библиотека") для задействования компонента используется среда КП, а не средства операционной системы, что позволяет осуществлять дополнительный контроль. Но с помощью КП можно создавать и DLL, но надо понимать, что тогда эти дополнительные возможности контроля уже не будут задействованы.