Если хотели работать странно что отбило. В моей датской компании примерно также. Самая главная причина они боятся ошибится, сложность и величина проекта такова, что человек эффективно начинает работать где-то после года работы на нем.
Через лет 10 автор поймет, что язык Х не важен на начальном этапе разработки, архитектура, дизайн и high level оптимизация должна предшествовать низкоуровневой.
Здесь играет роль размер выборки, ведь можно сгенерировать несколько миллионов случайных
вариантов.
Как эти несколько миллионов рандомных вариантов протестируют эту функцию? Подсказка, инпут позволяет 4.6e18 вариантов. Даже 100 миллионов вариантов не покроет и 1%.
Это желание переложить создание тесткейсов на рандомный объект на практике будет означать что код будет протестирован всеголишь чуточку лучше чем smoke test, то есть практически никак.
> простите, а инстанциирование бывает не в рантайме?
Автор имел ввиду coupling под тем.
> Или вы предлагаете размазать знания о цикле жизни объектов по клиентскому коду (код который использует зависимости)?
У меня сейчас оочень большой проект над которым работало много разных людей последние 8 лет. Не смотря на использование Dependency injection, это на практике не остановило размазывание о котором вы описываете. И я бы наверено действительно предпочел бы фабрику, что дало бы анализировать код статически.
С знанием библиотек на память согласен, но не владеть синтаксисом языка на котором пишешь это большой красный флаг.
Как эти несколько миллионов рандомных вариантов протестируют эту функцию? Подсказка, инпут позволяет 4.6e18 вариантов. Даже 100 миллионов вариантов не покроет и 1%.
Это желание переложить создание тесткейсов на рандомный объект на практике будет означать что код будет протестирован всеголишь чуточку лучше чем smoke test, то есть практически никак.
Автор имел ввиду coupling под тем.
> Или вы предлагаете размазать знания о цикле жизни объектов по клиентскому коду (код который использует зависимости)?
У меня сейчас оочень большой проект над которым работало много разных людей последние 8 лет. Не смотря на использование Dependency injection, это на практике не остановило размазывание о котором вы описываете. И я бы наверено действительно предпочел бы фабрику, что дало бы анализировать код статически.
свистелки и перделкирюшечки.