Первая встреча студенческого клуба информационных...

19
Основы объектно-ориентированного программирования Студенческий Клуб Информационных технологий, СГТУ Антон Хействер Виталий Бархатов

Upload: anton-kheystver

Post on 06-Jul-2015

469 views

Category:

Documents


1 download

DESCRIPTION

Тема: Объектно-ориентированное программирование

TRANSCRIPT

Page 1: Первая встреча студенческого клуба информационных технологий

Основы

объектно-ориентированного программирования

Студенческий Клуб Информационных технологий, СГТУ

Антон ХействерВиталий Бархатов

Page 2: Первая встреча студенческого клуба информационных технологий

Развитие языков программирования

Структурное программирование

Объектно –ориентированное программирование

2

Page 3: Первая встреча студенческого клуба информационных технологий

• Любая программа представляет структуру, построенную из базовых конструкций

• Базовые конструкции могут быть вложены друг в друга

• Повторяющиеся фрагменты программы могут оформляться в виде подпрограмм

• Разработка программы ведётся пошагово, методом «сверху вниз».

3

Концепции структурного программирования

Page 4: Первая встреча студенческого клуба информационных технологий

– Отсутствие связанности между данными и алгоритмами, обрабатывающими эти данные.

– Отсутствие возможности строго определить интерфейс взаимодействия с объектами

– Сложность расширения функционала существующих объектов

– Сложности при серийной обработке объектов4

Недостатки структурного программирования

Page 5: Первая встреча студенческого клуба информационных технологий

Мало аргументов?

На тестирование программного продукта уходит до 50% всего времени разработки.

А дальнейшая поддержка?5

Page 6: Первая встреча студенческого клуба информационных технологий

Первые принципы были предложены в языке Simula

в 1967 году

История ООП

6

Кристен Нюгор и Уле-Йохан Даль, создатели языка Simula

Page 7: Первая встреча студенческого клуба информационных технологий

История ООП

7

Первым широко распространённым языком

объектно-ориентированного программирования стал язык

Smalltalk, созданный в 70-х годах.

Алан Кэй, автор Smalltalk

Page 8: Первая встреча студенческого клуба информационных технологий

8

Популярность подхода

C

Java

C++

PHP

Basic

C#

Python

Perl

Delphi

JavaScript

9 из 10 используютобъектно-ориентированный подход

Page 9: Первая встреча студенческого клуба информационных технологий

Основные понятия

9

ООП

КлассОбъект

Page 10: Первая встреча студенческого клуба информационных технологий

Класс

Класс – это тип данных, определяемый пользователем, а также правила для взаимодействия с этими данными (методы).

10

Page 11: Первая встреча студенческого клуба информационных технологий

Объект (экземпляр) – это отдельный представитель класса, имеющий конкретное состояние.

Объект

11

Page 12: Первая встреча студенческого клуба информационных технологий

Концепции

ООПИнкапсуляция

Полиморфизм

Наследование

12

Page 13: Первая встреча студенческого клуба информационных технологий

Инкапсуляция – это свойство системы, позволяющее объединить данные и методы, работающие с ними, в классе и скрыть детали реализации от пользователя.

Инкапсуляция

13

Page 14: Первая встреча студенческого клуба информационных технологий

Интерфейс – это набор методов класса, доступных для использования другими классами.

Интерфейс класса

14

Page 15: Первая встреча студенческого клуба информационных технологий

Наследование

Наследование – это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствующейся функциональностью.

Класс, от которого производится наследование, называется базовым или родительским. Новый класс –потомком, наследником или производным классом.

15

Транспорт

Наземный

Легковой Грузовой

Водный Воздушный

Page 16: Первая встреча студенческого клуба информационных технологий

Полиморфизм – это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.

Полиморфизм

16

Page 17: Первая встреча студенческого клуба информационных технологий

Вернемся к проблеме

17

Page 18: Первая встреча студенческого клуба информационных технологий

Выход есть!

18

Быстрее исправлять баги

Проще вносить изменения

Снизить порог вхождения в код

ООП позволяет нам:

Page 19: Первая встреча студенческого клуба информационных технологий

Следите за новостями

Группа ВКонтакте:

Студенческий клуб информационных технологий СГТУ

http://vkontakte.ru/club16158713

19