ITAM: Бекенд на Python. Осень 2025
776 subscribers
23 photos
11 videos
1 file
66 links
Канал Курсов от ITAM Бекенд на Python. Осень 2025

Самое важное: https://t.me/itam_python_course/167
Чат: https://t.me/+kH6I4xLj9u9mNGMy
Download Telegram
Сегодня в 18:15 онлайн будет занятие по докерам!

Урок 8 - Deploy 2 — Докеры и Компоузы
Докеры, контейнерезация и как унифицировать деплоймент
Если такой паттерн, называется guard statements
Суть его в том, что лучше вначале кода отбрасывать негативные исходы, а позитивные оставлять в конце

Например, в домашке №3 часто делают так:
data = requests.get(f"http://ip-api.com/json/{domain}").json()
if data["status"] == "success":
print("Adress: ...")
else:
print("Something go wrong")


Представим, что нам нужно будет добавить еще проверку
data = requests.get(f"http://ip-api.com/json/{domain}").json()
if data["status"] == "success":
if data["country"] != 'Russia':
print("Адресс: ...")
else:
print("Invalid country")
else:
print("Something go wrong")

Получается много вложений, которые становится сложно читать. Давайте заменим на guard
data = requests.get(f"http://ip-api.com/json/{domain}").json()
if data["status"] != "success":
print("Something go wrong")
return

if data["country"] != 'Russia':
print("Invalid country")
return

print("Адресс: ...")

Стало понятнее и проще, если у нас будет еще больше проверок — код останется таким же читабельным. (А еще круче не принтить, а райзить ошибки и ниже их перехватывать, но это уже другая история)
3
На всякий случай - сегодня занятие не будет, будем отдыхать!
👌1