# полиморфизм - одни и те же вещи в разных местах и одинаковых

# SRP - единственная ответсвенность дворник не должен выполнять функцию повора тлт
# Open/closed - открыт к расширен если твои изменения ломают предыдущие то что-то не то написал
# Barbara Lisqou - принцип подстановки дочерний класс не может заменят родительский
# Interface suggregation - для разного типа кофе разная кнопка, нежели одна кнопка
# Dependency Invertion - зависимости должны зависить от абстракции абстракции не должны зависить от зависимостей
# если есть машина заранее не нужно ей ставить цвет зеленый
# лучше дать возможность указать

# OOD - object oriented design
# SOLID

# Patterns - поведенчиские структурные
# шаблон проектирования интерфейса - принципы которыми будем руководствоваться потом
# singleton - правительствоDRY
# DRY - dont repeat yourself
# KISS - keep it simple stupid

# OOA - object oriented analysis
# заранее понимать с чем мы будем работать в будущем
# товар покупка пользователь

# {a: 1} => {1: a}

def t(item):
    test = dict()
    for key in item:
        test[item[key]] = key
    return test


print(t({"a": 1}))

# исклечения - неисполнимый код - деление на ноль, неправильный синтаксис
# try {
#
# } except {
#
# } finnaly {
#
# } else {
# если в эксепт нет ошибки - тогда нет ошибки
# }

# raise - для вызова исключения



f8204294d63b9b39619eb4b267c99b446edd3031
<mask token>

def t(item):
    test = dict()
    for key in item:
        test[item[key]] = key
    return test


<mask token>

def t(item):
    test = dict()
    for key in item:
        test[item[key]] = key
    return test


print(t({'a': 1}))

# полиморфизм - одни и те же вещи в разных местах и одинаковых

# SRP - единственная ответсвенность дворник не должен выполнять функцию повора тлт
# Open/closed - открыт к расширен если твои изменения ломают предыдущие то что-то не то написал
# Barbara Lisqou - принцип подстановки дочерний класс не может заменят родительский
# Interface suggregation - для разного типа кофе разная кнопка, нежели одна кнопка
# Dependency Invertion - зависимости должны зависить от абстракции абстракции не должны зависить от зависимостей
# если есть машина заранее не нужно ей ставить цвет зеленый
# лучше дать возможность указать

# OOD - object oriented design
# SOLID

# Patterns - поведенчиские структурные
# шаблон проектирования интерфейса - принципы которыми будем руководствоваться потом
# singleton - правительствоDRY
# DRY - dont repeat yourself
# KISS - keep it simple stupid

# OOA - object oriented analysis
# заранее понимать с чем мы будем работать в будущем
# товар покупка пользователь

# {a: 1} => {1: a}

def t(item):
    test = dict()
    for key in item:
        test[item[key]] = key
    return test


print(t({"a": 1}))

# исклечения - неисполнимый код - деление на ноль, неправильный синтаксис
# try {
#
# } except {
#
# } finnaly {
#
# } else {
# если в эксепт нет ошибки - тогда нет ошибки
# }

# raise - для вызова исключения


