структуру настроек в init() ?
Много причин — инит срабатывает при импорте, инит можно запрятать в любой внутренний файл, тяжело отслеживать цепочку инитов
Неубедительные причины, если честно. Как отказ от инита в своем приложении в таком случае, защитит от инитов в импортируемых? Т.е. получается, что если человек контролирует то, что он пишет и что импортирует, то один инит на приложение - норм?)
Мне не очень понятны ваши доводы. Какая-то дилемма заключенных получается — если не я, то мне
Никакой дилеммы. Вот пишу я приложуху и добавляю в нее инит, чтобы на старте она что-то сделала. Что в этом плохого? Ответ - ничего. Никакой цепочки инитов, дебажить - сколько влезет
А потом джун дописывает код и внутри internal в каком-нибудь пакете вставляет свой инит
И получает по рукам. С тем же успехом можно отказаться от использования конкарренси, потому что какой-нить джун устроит гонку данных
С аргументом, что инит можно использовать только для загрузки конфига?
В чем проблема тогда загрузить все, что нужно загрузить, в мейне?
Нет проблемы. Но и с инитом нет проблемы. По крайней мере пока что аргументы против него такие себе
Приведите свои контраргументы, будет интересно обсудить
Я привел - если контролируешь, что пишешь и используешь, то проблем с отслеживанием инита и кго дебагом нет. Потому что он один на проект
А как вы контролируете?
Если поведение отличается от ожидаемого - читаю код
Встречный вопрос - а как вы коетролируете, что инитов нет?
Он пробегает по всей импортируемой кодовой базе?
Он линтерит код проекта, не импортируемые модули, которые загружаются с гитхаба. Если вы про это
Да, про это. То есть по факту нет гарантий, что инитов нет
И все еще - если в коде проекта есть один кдинственный инит, то что в нем плохого?
порядок инитов в разных пакетах невозможно контролировать, и вообще порядок не интуитивен. а еще в одном пакете может быть больше одного инита, и тоже фиг поймешь, в каком порядке они отработают в общем, или в нем что-то тривиальное, и тогда можно и обойтись без функции, или в нем что-то сложное, и тогда поведение неочевидно и иногда непредсказуемо
Обсуждают сегодня