Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Оценка 4.6

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Оценка 4.6
Лекции +1
ppt
информатика
Взрослым
31.03.2017
Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
В презентации приведены основные теоретические сведения об основах объектно-ориентированного программирования, о его 3 принципах: инкапсуляция, наследование и полиморфизм. Даны определения основным терминам, относящимся к ООП, таким как классы, объекты и тд. Приводятся примеры. В конце студентам дается мини тест для закрепления нового материала.Тип файла - презентация в программе Microsoft Office Power Point.
Лекция - Основы объектно-ориентированного программирования 2.ppt

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Лекци я Основы объектно- ориентированного программирования 2016 г 1

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Содержание • Этапы развития программирования • Программная инженерия • Фундаментальные понятия ООП • Этапы разработки программ с использованием ООП • Основополагающие концепции ООП • Инкапсуляция • Наследование • Полиморфизм • Объекты • Анатомия класса • Управление доступом к элементам класса • Объявление класса в программе. Пример1. «Класс TPerson» • Контрольные вопросы • Мини-тест 2

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Этапы развития программирования Технология программирования – это система методов, способов и приемов обработки и выдачи информации. • Написание программ в машинных кодах • Появление языков низкого уровня • Языки высокого уровня. Технология нисходящего структурного программирования • Появление ООП 3

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Предпосылки и история программирования • Первый кризис • Повторное использование кода • Рост сложности программ • Модификация программ – Структурное программирование – Модульное программирование – Объектно-ориентированное • Продолжение кризиса программирование программирования 4

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Повторное использование кода • Проблема –Дублирование фрагментов кода • Модульное программирование –Выделение фрагментов в модули –Повторное использование модулей –Создание библиотек модулей 5

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Рост сложности программ • Проблема – Сложные программные комплексы • Объем кода, к-во связей, к-во разработчиков, к-во пользователей – Жизненный цикл: стадии внедрения и сопровождения • Структурное программирование – «Правильное» проектирование и кодирование – Основные принципы: • Нисходящее проектирование • Применение специальных языков проектирования • Дисциплина проектирования и разработки: – планирование и документирование проекта – поддержка соответствие кода проектной документации • Структурное кодирование (линейный блок, If-then-else, цикл) 6

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Модификация программ Зарплата • Проблема – изменения в проекте и программе без изменения ранее написанного кода • Объектно-ориентированное программирование – Класс – модуль со свойствами, поведением, обязанностями – Парадигмы ООП: деталей • Инкапсуляция и сокрытие • Наследование • Полиморфизм Отдел 1 Отдел 2 Отдел 3 Зарплата Зарплата 1 Отдел 1 Отдел 2 Отдел 3 7

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Некоторые итоги • Главная цель программной инженерии • Сформировались основные принципы - сокращение стоимости ПО и методы проектирования ПО: – Жизненный цикл ПО – Модульное программирование – Структурное проектирование и – Объектно-ориентированное программирование проектирование и программирование 8

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Продолжение кризиса • Кризис программирования принимает хронические формы: – США тратит более $200 млрд. на более чем 170 тыс. проектов – потери от недополученного эффекта измеряются триллионами. • Успешные проекты не часты (30000 проектов) Проваленные Проблемные Успешные 2000 1998 1995 1994 23% 28% 40% 31% 49% 46% 33% 53% 28% 26% 27% 16% Источник: The Standish Group International, Inc., Extreme Chaos, 2000 http://www1.standishgroup.com//sample_research/PDFpages/extreme_chaos.pdf 9

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Определения Программная инженерия – это – установление и использование обоснованных инженерных принципов (методов) для экономного получения ПО, которое надежно и работает на реальных машинах. [Bauer 1972]. – та форма инженерии, которая применяет принципы информатики (computer science) и математики для рентабельного решения проблем ПО. [CMU/SEI-90-TR-003] – применение систематического, дисциплинированного, измеряемого подхода к разработке, использованию и сопровождению ПО [IEEE 1990]. – дисциплина, целью которой является создание качественного ПО, которое завершается вовремя, не превышает выделенных бюджетных средств и удовлетворяет выдвигаемым требованиям [Schach, 99] 10

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Абстрактные и реальные объекты • Абстрактный объект это описание реального объекта минус подробности • Пример 1: • Абстрактные человек-это описание человека, которое содержит атрибуты и варианты поведения: • Реальный человек определяет значения атрибутов: – Имя – Фамилия – Рост – Вес – Майкл – Джексон – 180 см – 80 кг Пример 2: формочки для печенья 11

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Почему объекты? • Фокусирование на объектах упрощает для нас понимание сложных вещей. • Уделяем внимание лишь важным аспектам • Пример : преподаватель - студент 12

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Объекты в деловом мире • Бизнес процесс: Заказ товара. • Объекты: Поведение: • Форма заказа • Список товаров •Ввод информации •Изменение информации • Товарная накладная •Удаление информации • Ордер на отгрузку •Отображение формы •Обработка заказа • Метка отгрузки •Отмена заказа 13

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Концепция Класс и Объект • Класс - принципиально новый тип данных. • Класс представляет собой множество объектов – имеющих общую структуру – обладающих одинаковым поведением. развитием типа структура (запись) • Класс является дальнейшим 14

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

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

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Класс простое объяснение • Класс – это шаблон который определяет атрибуты и методы реального мира. А, она лишь определяет , как буква А выглядит. • Пример: форма для печенья в виде буквы «А» - это не буква • Если вам необходим объект, представляемый классом, создаете экземпляр. • Каждый экземпляр содержит те же самые атрибуты и методы, которые определены в классе. У каждого экземпляра своя копия. • Метод – поведение объекта. (опять про печенье, но в форме собаки) 16

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Этапы разработки программ с использованием ООП ООП представляет собой систематизированный подход к алгоритмической формализации сложных предметных областей. ООП предполагает этапы разработки программ: • Первый этап: абстрагирование • Второй этап: инкапсуляция • Третий этап: модульность • Четвертый этап: иерархия 17

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Этапы разработки программ с использованием ООП Абстрагирование • Выделение абстракций. Это - анализ предметной области, для которой составляется программа, с целью определения – основных объектов этой предметной области, – их свойств, – отношений между объектами, – возможных операций над объектами или их составляющими. Различие: Процедурное программирование нацелено на моделирование действий, выполняемых компьютером. ООП нацелено на моделирование предметной области решаемой задачи. 18

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

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

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Парадигмы ООП: –инкапсуляция –наследование –полиморфизм 20

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Инкапсуляция (encapsulation) - это объединение производного типа данных с набором функций, используемых при работе с этим типом данных, в единый класс. • Функции, включенные в класс, называют методами класса • Данные – элементами или полями класса, • Конкретные представители класса – объекты, экземпляры. Класс (объект) - это то, что поддерживает инкапсуляцию • Инкапсуляция позволяет сделать класс «самодостаточным» для решения конкретной задачи. • Класс всегда несет в себе некоторую функциональность. • Это мощное средство обмена готовыми к работе программными заготовками 21

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

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

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Инкапсуляция Student ID F_Name L_Name Graduation Write() Display() Aspirant A_Major A_School YearGraduated Write() Display() 23

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Управление доступом Ключи доступа • private - элементы данных могут использоваться только функциями-методами класса, к которому принадлежат эти элементы данных • public - элементы данных могут использоваться любыми функциями программы • protected - элементы данных могут использоваться функциями-методами того же класса, к которому принадлежат эти элементы данных, а также функциями- (классов-потомков) указаны, то все элементы класса являются скрытыми (недоступными). По умолчанию ключ доступа private. Т.е. если ключи доступа не методами производных классов Попытка обратиться в программе к скрытым данным или методам вызывает сообщение: <имя элемента класса> is not accessible 24

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Наследование (inheritance) - это возможность определять новые классы посредством добавления полей, свойств и методов к уже существующим классам. • Такой механизм получения новых классов называется порождением. • При этом новый, порожденный, класс (потомок) наследует все поля, методы и свойства своего базового, родительского класса. • Наследование поддерживает концепцию иерархии классов • Применение иерархии классов делает управляемыми большие (hierarchical classification). потоки информации. • Наследование обеспечивает поэтапное создание сложных классов и разработку собственных библиотек классов 25

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Полиморфизм (polymorphism) 26

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

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

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Описание класса в Delphi • • • • • • type < имя класса > = class(< имя класса-родителя >) public < описание общедоступных элементов > published < описание элементов, доступных в Инспекторе Объектов > protected < описание элементов, доступных в классах-потомках > private < описание элементов, доступных только в модуле > • • • • • end; 28

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Пример описания класса TControl = class(TComponent) private FOnDblClick: TNotifyEvent; FOnHouseDown: TMouseEvent; FOnHouseHove: TMouseMoveEvent; protected FOnDblClick; property OnDblClick: TNotifyEvent read FOnDblClick write property OnMouseDown: TMouseEvent read FOnMouseDown write FOnMouseDown; property OnMouseMove: TMouseMoveEvent read FOnMouseMove write FOnMouseMove; end; 29

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Пример описания класса type TStudent = class FAge : integer; function GetAge : integer; procedure SetAge(Value : integer); property Age : integer read GetAge write SetAge; end; 30

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Пример 1. Объявление класса в программе. Постановка задачи Пусть необходимо создать класс, описывающий некоторые характеристики человека. • Будем хранить о человеке следующие данные: фио, рост в cм, вес в кг. • Для работы с этими данными предусмотрим следующие методы: – методы инициализации полей (названия таких методов имеют префикс Set); назначение этих методов - присваивать новые значения полям класса; новые значения полей будут предаваться через параметры функций-методов; – метод, позволяющий получить информацию о текущем состоянии объекта (значении всех его полей). 31

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
Итоги Контрольные вопросы • Перечислите основные этапы развития технологии программирования. • Определите понятие и назначение класса • Определите понятие и характеристики объекта • Перечислите и охарактеризуйте этапы разработки программ с использованием ООП • Назовите и охарактеризуйте основные концепции ООП • Из каких элементов состоит класс? • Как ограничить доступ к составляющим класса? 34

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
вопрос 1 1. Что такое класс? – Это модуль, сохраненный в файле – Это функция – Это библиотека – Это тип данных – Это специальная программа 35

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
вопрос 2 2. Что такое методы класса? – Это инкапсулированные в классе данные – Это функции для работы с полями класса – Это специальные функции в составе ОС Windows 36

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"

Презентация урока по дисциплине "Основы алгоритмизации и программирования" на тему "Основы объектно-ориентированного программирования. Принципы ООП. Классы. Объекты"
вопрос 3 2. Что такое полиморфизм? – Это переключатель – Это спец.функция для работы с полями класса – Это одно имя – разный функционал 37
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
31.03.2017