🗊Презентация Объектно – ориентированное программирование (ООП). Лекция 8

Нажмите для полного просмотра!
Объектно – ориентированное программирование (ООП). Лекция 8, слайд №1Объектно – ориентированное программирование (ООП). Лекция 8, слайд №2Объектно – ориентированное программирование (ООП). Лекция 8, слайд №3Объектно – ориентированное программирование (ООП). Лекция 8, слайд №4Объектно – ориентированное программирование (ООП). Лекция 8, слайд №5Объектно – ориентированное программирование (ООП). Лекция 8, слайд №6Объектно – ориентированное программирование (ООП). Лекция 8, слайд №7Объектно – ориентированное программирование (ООП). Лекция 8, слайд №8Объектно – ориентированное программирование (ООП). Лекция 8, слайд №9Объектно – ориентированное программирование (ООП). Лекция 8, слайд №10Объектно – ориентированное программирование (ООП). Лекция 8, слайд №11Объектно – ориентированное программирование (ООП). Лекция 8, слайд №12Объектно – ориентированное программирование (ООП). Лекция 8, слайд №13Объектно – ориентированное программирование (ООП). Лекция 8, слайд №14Объектно – ориентированное программирование (ООП). Лекция 8, слайд №15Объектно – ориентированное программирование (ООП). Лекция 8, слайд №16Объектно – ориентированное программирование (ООП). Лекция 8, слайд №17Объектно – ориентированное программирование (ООП). Лекция 8, слайд №18Объектно – ориентированное программирование (ООП). Лекция 8, слайд №19Объектно – ориентированное программирование (ООП). Лекция 8, слайд №20Объектно – ориентированное программирование (ООП). Лекция 8, слайд №21Объектно – ориентированное программирование (ООП). Лекция 8, слайд №22

Содержание

Вы можете ознакомиться и скачать презентацию на тему Объектно – ориентированное программирование (ООП). Лекция 8. Доклад-сообщение содержит 22 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Язык программирования
Лекция № 8. Объектно – ориентированное программирование
(ООП)
Евгений Сергеевич Чухланцев
Описание слайда:
Язык программирования Лекция № 8. Объектно – ориентированное программирование (ООП) Евгений Сергеевич Чухланцев

Слайд 2





Объектно-ориентированное программирование
ООП
 -парадигма программирования, основными концепциями которой являются понятия «класс» и «объект».
Описание слайда:
Объектно-ориентированное программирование ООП -парадигма программирования, основными концепциями которой являются понятия «класс» и «объект».

Слайд 3





Класс – пользовательский тип,   описывающий устройство объекта.		
Объект  –  «душа», сущность класса.
Описание слайда:
Класс – пользовательский тип, описывающий устройство объекта. Объект – «душа», сущность класса.

Слайд 4





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

Слайд 5





Механизмы ООП (принципы):
Инкапсуляция - можно скрыть ненужные внутренние подробности работы объекта от окружающего мира (алгоритмы работы с данными хранятся вместе с данными).
Описание слайда:
Механизмы ООП (принципы): Инкапсуляция - можно скрыть ненужные внутренние подробности работы объекта от окружающего мира (алгоритмы работы с данными хранятся вместе с данными).

Слайд 6





Классы в Python
class  <name>
	def <method> (self [, <arguments>]):
		<Function codes>
Описание слайда:
Классы в Python class <name> def <method> (self [, <arguments>]): <Function codes>

Слайд 7





Пример класса 
class Car(object): 
	color = ‘red’ # свойство класса (атрибут)

	def out(self): # метод класса
		print (self.color + ‘!’)

obj = Car() 

print (obj.color) # red

obj.out() # red!
Описание слайда:
Пример класса class Car(object): color = ‘red’ # свойство класса (атрибут) def out(self): # метод класса print (self.color + ‘!’) obj = Car() print (obj.color) # red obj.out() # red!

Слайд 8





Объекты
Все базовые типы в Python (число, строка, функция, модуль) - объекты.
Описание слайда:
Объекты Все базовые типы в Python (число, строка, функция, модуль) - объекты.

Слайд 9





Private & Public свойства
class Car(object): 
		color = “red”
		__color = “green”
 
obj = Car()
obj.color = “yellow” # True
obj.__color = “white” # Error
Описание слайда:
Private & Public свойства class Car(object): color = “red” __color = “green” obj = Car() obj.color = “yellow” # True obj.__color = “white” # Error

Слайд 10





Getters & Setters

 class Car(object):
	 __speed = 0
 	 def get_speed(self):
		 return self.__speed
	 def set_speed(self, speed):
		    assert isinstance(speed, int) 
		  self.__speed = min(speed, 200) 
 
 c = Car()
 c.set_speed(60)
 print (c.get_speed()) # 60
Описание слайда:
Getters & Setters class Car(object): __speed = 0 def get_speed(self): return self.__speed def set_speed(self, speed): assert isinstance(speed, int) self.__speed = min(speed, 200) c = Car() c.set_speed(60) print (c.get_speed()) # 60

Слайд 11





Конструктор
- метод, при создании объекта автоматически создающий ему атрибуты ( __init__ ).
Описание слайда:
Конструктор - метод, при создании объекта автоматически создающий ему атрибуты ( __init__ ).

Слайд 12





Конструктор
Параметры без значений по умолчанию указываются первыми, а параметры со значениями по умолчанию — после. 
Описание слайда:
Конструктор Параметры без значений по умолчанию указываются первыми, а параметры со значениями по умолчанию — после. 

Слайд 13





Строковое представление
 class Car(object):
    __speed = 200
    ...
    def __str__(self):
       return ‘Car with speed’ + str(self.__speed)
 c = Car()
 print (c) # Car speed 200
Описание слайда:
Строковое представление class Car(object): __speed = 200 ... def __str__(self): return ‘Car with speed’ + str(self.__speed) c = Car() print (c) # Car speed 200

Слайд 14





Наследование
- механизм ООП, позволяющий описать новый класс на основе родительского, т.ч. свойства и функциональность родительского класса заимствуются новым классом.
Описание слайда:
Наследование - механизм ООП, позволяющий описать новый класс на основе родительского, т.ч. свойства и функциональность родительского класса заимствуются новым классом.

Слайд 15





Наследование
 class DerName (BaseClassName):
      <statement-1> 
       . . .
      <statement-N>
Описание слайда:
Наследование class DerName (BaseClassName): <statement-1> . . . <statement-N>

Слайд 16





Наследование
Функция issubclass(X, Y) :
является ли класс X подклассом класса Y
Описание слайда:
Наследование Функция issubclass(X, Y) : является ли класс X подклассом класса Y

Слайд 17





Наследование
 class A(object): pass
 class B(A): pass
 print B.__mro__
 #(<class '__main__.B'>, 
      <class '__main__.A'>, 
      <type 'object'>)
Описание слайда:
Наследование class A(object): pass class B(A): pass print B.__mro__ #(<class '__main__.B'>, <class '__main__.A'>, <type 'object'>)

Слайд 18





Полиморфизм
- взаимозаменяемость объектов с одинаковым интерфейсом
Описание слайда:
Полиморфизм - взаимозаменяемость объектов с одинаковым интерфейсом

Слайд 19





Полиморфизм
- возможность использования одного и того же имени операции (метода) к объектам разных классов.
Описание слайда:
Полиморфизм - возможность использования одного и того же имени операции (метода) к объектам разных классов.

Слайд 20





Duck Typing
«If it looks like a duck and quacks like a duck, it must be a duck.»
Описание слайда:
Duck Typing «If it looks like a duck and quacks like a duck, it must be a duck.»

Слайд 21





Дополнительно
 class Car(object): pass
 c = Car()
 
 print (c) # <__main__.Car object at 0x041D6BD0>
 
 print (Car) # <class '__main__.Car'>
 print (type(c)) # <class '__main__.Car'>
 print (c.__class__) # <class '__main__.Car'>
 
 print (type(Car)) # <type 'type'>
 print (type(type(c))) # <type 'type'>
 print (Car.__class__) # <type 'type'>
 
 print (Car.__bases__) # (<type 'object'>,)
 
 print (type(type(Car))) # <type 'type'>
 print (type(Car).__bases__) # (<type 'object'>,)
Описание слайда:
Дополнительно class Car(object): pass c = Car() print (c) # <__main__.Car object at 0x041D6BD0> print (Car) # <class '__main__.Car'> print (type(c)) # <class '__main__.Car'> print (c.__class__) # <class '__main__.Car'> print (type(Car)) # <type 'type'> print (type(type(c))) # <type 'type'> print (Car.__class__) # <type 'type'> print (Car.__bases__) # (<type 'object'>,) print (type(type(Car))) # <type 'type'> print (type(Car).__bases__) # (<type 'object'>,)

Слайд 22





Материалы по теме ООП
http://younglinux.info/oopython/oop.php
http://www.ibm.com/developerworks/ru/library/l-python_part_6/index.html
http://en.wikibooks.org/wiki/Python_Programming/Object-oriented_programming
http://www.cafepy.com/article/python_types_and_objectshttp://www.cafepy.com/article/python_attributes_and_methods/
http://docs.python.org/tutorial/classes.html
Описание слайда:
Материалы по теме ООП http://younglinux.info/oopython/oop.php http://www.ibm.com/developerworks/ru/library/l-python_part_6/index.html http://en.wikibooks.org/wiki/Python_Programming/Object-oriented_programming http://www.cafepy.com/article/python_types_and_objectshttp://www.cafepy.com/article/python_attributes_and_methods/ http://docs.python.org/tutorial/classes.html



Похожие презентации
Mypresentation.ru
Загрузить презентацию