Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Процесс, с помощью которого один тип наследует характеристики другого типа, называется наследованием. В Delphi все классы являются потомками класса TObject.

Свойства объекта. Совокупность данных и методов их чтение и записи называются свойством. Свойства объектов можно устанавливать в процессе проектирования, а также можно изменять программно во время выполнения программы. (В процессе проектирования приложений в среде программирования Delphi можно просматривать значения некоторых из этих данных в окне Инспектора Объектов и изменять эти значения).

События и их обработка. Средой взаимодействия объектов являются сообщения, генерируемые в результате наступления различных событий. Событие – это взаимодействие на объект. Событие наступает в результате действий пользователя (перемещение курсора, нажатие кнопки и т. п.). В каждом объекте определено множество событий, на которые он может реагировать. В конкретных объектах могут быть определены обработчики каких-то из этих событий. К написанию этих обработчиков и сводится основное программирование с помощью Delphi.

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

НЕ нашли? Не то? Что вы ищете?

Контрольные вопросы

Дайте определение ООП. Что называется объектом? Дайте определение события

Лекция 2

Тема: Объектно-ориентированное программирование. Инкапсуляция. Наследование. Полиморфизм. Описание объектового типа. Виртуальные методы.

Цель: дать понятие инкапсуляции, классов и методов.

Объектно-ориентированное, или объектное, программирование (в дальнейшем ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы.

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

1. Инкапсуляция - это объединение в единое целое данных и алгоритмов обработки этих данных. В рамках ООП данные называются полями объекта (свойствами), а алгоритмы - объектными методами или просто методами.

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

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

2. Наследование - есть свойство объектов порождать своих потомков. Объект-потомок автоматически наследует от родителя все поля и методы, может дополнять объекты новыми полями и заменять (перекрывать) методы родителя или дополнять их.

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

3. Полиморфизм - это свойство родственных объектов (т. е. объектов, имеющих одного общего родителя) решать схожие по смыслу проблемы разными способами. В рамках ООП поведенческие свойства объекта определяются набором входящих в него методов. Изменяя алгоритм того или иного метода в потомках объекта, программист может придавать этим потомкам отсутствующие у родителя специфические свойства. Для изменения метода необходимо перекрыть его в потомке, то есть объявить в потомке одноименный метод и реализовать в нем нужные действия. В результате в объекте-родителе и объекте-потомке будут действовать два одноименных метода, имеющие разную алгоритмическую основу и, следовательно, придающие объектам разные свойства. Это и называется полиморфизмом объектов.

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

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

Виртуальные методы — один из важнейших приёмов реализации полиморфизма. Они позволяют создавать общий код, который может работать как с объектами базового класса, так и с объектами любого его класса-наследника. При этом базовый класс определяет способ работы с объектами, и любые его наследники могут предоставлять конкретную реализацию этого способа.

Контрольные вопросы

Назовите три принципа ООП и дайте им определение Что означает виртуальный метод

Лекция 3

Тема: Динамическое создание объектов. Конструкторы и деструкторы. Скрытые поля и методы.

Цель: ввести понятие конструкторов и деструкторов.

Динамическое создание объектов. Динамические объекты предоставляют такие элементы, как свойства и методы, во время выполнения, а не во время компиляции. Это позволяет создавать объекты для работы со структурами, не соответствующими статическому типу или формату. Динамические объекты обеспечивают удобный доступ к динамическим языкам, таким как IronPython и IronRuby. С помощью динамического объекта можно ссылаться на динамический скрипт, интерпретируемый во время выполнения.

Список команд, позволяющих динамически создавать объекты:

Создание кнопки – CreateTextButton ("inlabel","outlabel$,x, y,w, h,text")

Создание текстового объекта - CreateText("inlabel","outlabel$,x, y,text")

Создание текста с полосой прокрутки - CreateParagraph("inlabel","outlabel$,x, y,w, h,text")

Создание круга - CreateCircle("inlabel","outlabel$,x, y,w, h,r, g,b")

Создание прямоугольника - CreateRectangle("inlabel","outlabel$,x, y,w, h,r, g,b")

Создание линии (относительное позиционирование) - CreateLine("inlabel","outlabel$,x, y,w, h,r, g,b")

Создание прямоугольника (абсолютное позиционирование) - CreateLineAB("inlabel","outlabel$,x1,y1,x2,y2,r, g,b")

Создание активной области - CreateHotSpot("inlabel","outlabel$,x, y,w, h")

Создание скрипта - CreateScript("inlabel","outlabel$")

Конструкторы и деструкторы

В объектно-ориентированном программировании конструктор класса (от англ. constructor, иногда сокращают ctor) — специальный блок инструкций, вызываемый при создании объекта. Конструктор схож с методом, но отличается от метода тем, что не имеет явным образом определённого типа возвращаемых данных, не наследуется, и обычно имеет различные правила для рассматриваемых модификаторов. Их задача — инициализировать члены объекта и определить инвариант класса, сообщив в случае некорректности инварианта. Корректно написанный конструктор оставит объект в «правильном» состоянии

Некоторые языки программирования различают несколько особых типов конструкторов:

    конструктор по умолчанию — конструктор, не принимающий аргументов; конструктор копирования — конструктор, принимающий в качестве аргумента объект того же класса (или ссылку из него); конструктор преобразования — конструктор, принимающий один аргумент (эти конструкторы могут вызываться автоматически для преобразования значений других типов в объекты данного класса).

Деструктор — специальный метод класса, служащий для деинициализации объекта (например освобождения памяти).

Для объявления деструктора в Delphi используется ключевое слово destructor. Имядеструктора может быть любым, но рекомендуется всегда называть деструктор Destroy.

В Delphi все классы являются потомками, по крайней мере, класса TObject, поэтому, для корректного освобождения памяти, необходимо перекрывать деструктор, используя директиву override.

Практически всегда деструктор делается виртуальным. Делается это для того, чтобы корректно (без утечек памяти) уничтожались объекты не только заданного класса, а и любого производного от него. Например: в игре уровни, звуки и спрайты могут создаваться загрузчиком, а уничтожаться — менеджером памяти, для которого нет разницы между уровнем и спрайтом.

Скрытые поля и методы.

Скрытые поля формы определяются с помощью <input type="hidden" />. Они используются для предоставления информации о состоянии элемента управления программам сервера. Скрытые элементы формы никогда не отображаются на экране, но их пары "имя-значение" будут отправлены серверу при подаче запроса. Ввиду того что эти элементы не имеют визуального представления и не допускают интерактивного взаимодействия, синтаксис скрытых полей XHTML таков:

<input type=" hidden"

name="имя поля"

id="имя поля"

value="значение" />

Свойства JavaScript, полезные для работы со скрытыми полями, это disabled, form, id, name и value. Во многих задачах, требующих сохранения информации о состоянии, без скрытых полей обойтись трудно. Использование скрытых полей для сохранения информации о состоянии элементы управления несет в себе потенциальную опасность — их содержимое может без труда увидеть и случайно или намеренно изменить любой конечный пользователь.

Контрольные вопросы

Что представляет собой конструктор? Какие типы конструкторов различают? Что представляет собой деструктор?

Лекция 4

Тема: Теоретические основы объектно-ориентированного программирования. От процедурного программирования к объектному. Основные принципы и этапы ООП. Объектная декомпозиция.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24