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