Автор: Пользователь скрыл имя, 16 Января 2011 в 20:12, лекция
Delphi – это среда разработки программ, ориентированных на работу в операционной системе Windows. В основе Delphi лежит технология визуального проектирования, которая базируется на идеях объектно-ориентированного программирования. Программы в Delphi пишутся на языке Object Pascal, который является развитием языка Turbo Pascal. Слово “Object” особо подчёркивает, что язык поддерживает концепцию объектно-ориентированного программирования.
for i:=2 to 10 do
begin
read(a);
if a>max then max:=a
end;
writeln(max:5:2);
readln; readln
end.
Рассмотрим выполнение этой программы по шагам, считая, что последовательность чисел та же, что и в предыдущем примере:
В результате получим ответ 12.8.
Пример 19. Напечатать все натуральные числа от 1 до 1000, количество делителей каждого из которых равно 5.
Решение. Перебираем все целые числа n от 1 до 1000, и для каждого числа n просматриваем все целые числа i от 1 до n, подсчитывая количество ( k ) делителей числа n. Каждое число n, для которого k=5, выводим на печать.
var i, n : integer; k : byte;
begin
for n:=1 to 1000 do
begin
k:=0;
for i:=1 to n do
if (n mod i = 0) then inc(k);
if k=5 then writeln(n)
end;
readln
end.
ЛЕКЦИЯ №
Итерационные
циклы
ЛЕКЦИЯ
№
Основные принципы ООП
Инкапсуляция. Наследование. Полиморфизм
Исторически сложилось так, что программирование возникло и развивалось как процедурное программирование, которое предполагает, что основой программы является алгоритм, процедура обработки данных.
Объектно-ориентированное программирование (ООП) – это методика разработки программ, в основе которой лежит понятие объект. Задача, решаемая с использованием методики ООП, описывается в терминах объектов и операций над ними, а программа при таком подходе представляет собой набор объектов и связей между ними.
Прежде чем давать определение понятию объект, рассмотрим, что такое класс.
Класс – это определяемый пользователем тип, который включает в себя данные разных типов и операции над ними.
Объект – это экземпляр какого-либо класса.
Таким
образом, класс – это описание,
а объект – это то, что создано
в соответствии с этим описанием.
До создания объектно-ориентированных
языков программирования, данные и
операции над этими данными
Объекты – это тоже хранилища разных типов данных. Данные объекты называются полями (fields) и аналогичны полям записи. Но объекты в отличие от записей, содержат еще процедуры и функции, которые применимы к полям данного объекта. Эти процедуры и функции называются методами (methods). Изменять поля объекта можно при помощи свойств (properties) объекта. Каждое свойство объекта в Delphi представляет собой поле и методы, которые позволяют считывать значение поля и задавать его (так называемые методы доступа). Свойства можно изменять в процессе разработки приложения с помощью инспектора объектов.
Существует 3 основных принципа объектно-ориентированного программирования — инкапсуляция, наследование и полиморфизм.
Объект — это сложная конструкция, свойства и поведение составных частей которой находятся во взаимодействии.
Объект – это совокупность свойств и методов, а так же событий на которые он может реагировать.
Инкапсуляция – объединение в единое целое данных и алгоритмов обработки этих данных. Данные – поля объекта, а алгоритмы – объектные методы.
Инкапсуляция позволяет в максимальной степени изолировать объект от внешнего окружения. Она существенно повышает надежность разрабатываемых программ, так как локализованные в объекте алгоритмы обмениваются с программой сравнительно небольшими объемами данных, причем количество и тип этих данных – контролируются.
Наследование - этот принцип означает, что если вы хотите создать новый класс, лишь немного отличающийся от старого, то совершенно нет необходимости в переписывании заново уже существующих полей и методов. Вы объявляете, что новый класс TNewObject
TNewObject = class(TOldObject);
является потомком или дочерним классом старого класса TOldObject, называемого предком или родительским классом, и добавляете к нему новые поля, методы и свойства — иными словами, то, что нужно при переходе от общего к частному.
Унаследованные от класса-предка поля и методы доступны в дочернем классе; если имеет место совпадение имен методов, то говорят, что они перекрываются.
Поведение методов при наследовании, без преувеличения, является краеугольным камнем объектно- ориентированного программирования. В зависимости от того, какие действия происходят при вызове, методы делятся на три группы. В первую группу отнесем статические методы, во вторую — виртуальные (virtual) и динамические (dynamic) и, наконец, в третью — появившиеся только в Delphi 4 — перегружаемые (overload) методы.
Методы первой группы полностью перекрываются в классах-потомках при их переопределении. При этом можно полностью изменить объявление метода. Методы второй группы при наследовании должны сохранять наименование и тип. Перегружаемые методы дополняют механизм наследования возможностью использовать нужный вариант метода (собственный или родительский) в зависимости от условий применения.
Полиморфизм
– это свойство родственных объектов
(то есть объектов, имеющих одного общего
родителя) решать схожие по смыслу проблемы
разными способами. В рамках Object Pascal поведенческие
свойства класса определяются набором
входящих в него методов. Изменяя алгоритм
того или иного метода в потомках класса,
программист может придавать этим потомкам
отсутствующие у родителя специфические
свойства. Для изменения метода необходимо
перекрыть его в потомке, т. е. объявить
в потомке одноименный метод и реализовать
в нем нужные действия. В результате в
объекте-родителе и объекте-потомке будут
действовать два одноименных метода, имеющих
разную алгоритмическую основу и, следовательно,
придающих объектам разные свойства. Это
и называется полиморфизмом объектов.
Информация о работе Структура программы. Идентификаторы переменных, констант