Pull to refresh

Comments 5

Вот совершенно не захотелось "записаться на урок по ссылке" после этой статьи... Интересно, почему?

Ещё поймал себя на мысли, что не могу припомнить ни одного случая, когда мне в Python захотелось бы применить "неиспользование контекстного менеджера для открытия файла". Вот ни разу! Видимо, я пропустил раздачу этого "антипаттерна" /s

У меня есть пример, когда осмысленно не закрывал файлы. Это утилиты, единственная задача которых - обработать файл. Контекстный менеджер в таком случае уже существует и называется "процесс операционной системы". Завершается он - закрываются и все его файлы :)

Только если открывали их на чтение. Если вы открываете их запись то в менее продающих пользователя языках типа с++ это может привести к потопе данных. В питоне тоже может но надо постараться, там защиты от дурака побольше.

А потом этот код захотят переиспользовать и полезу сюрпризы. Завернуть в контекстный менеджер ничего не стоит.

Тема статьи - "Антипаттерны тестирования: как не стоит писать тесты в Python".

В статье же описаны плохие практики написания кода вообще и кое-как затронуты тесты в самом начале. А антипаттерны в тестах когда будут?

Sign up to leave a comment.