MS
Size: a a a
MS
AK
А
А
ZM
P
P
P
ZM
d
class Home(object):
def __init__(self, wall, roof, doors, windows):
self.wall = wall
self.roof = roof
self.doors = doors
self.windows = windows
def __str__(self):
return "wall: %s, roof: %s,doors, %s, windows: %s" % (self. wall, self.roof, self.doors, self.windows)
d
from additor import Home
class my_home(Home):
def init(self, wall, roof, doors, windows):
User.init(self, wall, roof, doors, windows, "my_home")
d
d
* объект: частный дом.
* класс: дом.
* инкапсюляция: В доме всё провода скрыты для безопасности людей(чтобы не ударили током).Людям доступны только кнопкивключение и выключения света и розетки.
* наследование: Во всех домах можно жить.
* Полиморфизм: Но, например, в многоетажных домах может жить не одна семья, а много.
* Single responsibility (принцип единственной ответственности) - Дом должен быть предназначен только чтобы жить там.
* Open-closed (прин цип открытости / закрытости) - В доме ничего нельзя мешать, но можено достроить например балкон.
* Liskov substitution (принцип подстановки Барбары Лисков) - В доме который еще не расширен тоже можно жить.
* Interface segregation (прин цип раз де ле ния интер фейса) - если что-то делать в одной комнате, то это не должно касаться других комнат.
* Dependency inversion (принцип инверсии зависимостей) - уровни абстракции дома не должны зависить от деталей, но детали должны зависить от уровней абстракции.Допустим с первого взгляда это дом, потом что это частный дом, потом что он двухэтажный, что у него кирпичная кладка и тд и тп.
d
d
d
PS
CB
CB