кажется нет разницы. А если не там же, а например делаешь аргумент типа интерфейс, а не класс, то наверное dependency injection?
Как защита от дурака - я всегда объявляю переменную, реализующую интерфейс, а не класс, чтобы быть уверенным, что интерфейс предлагает всё необходимое. В случае если нет - я тотчас же получу ошибку, так как не смогу достучаться до объявленных в классе, но не объявленных в интерфейсе сущностей. Это позволяет мне доверять интерфейсам на каждом шаге
Омайгод
Даже для локальных переменных?
Без разницы, я же проверяю интерфейс.
А почему бы тестированием АПИ интерфейсов не заняться в... тестах?
Если TDD, то да, а если нет?
Существуют проекты без тестов?
а если у тебя есть неиспользуемая в коде часть апи?
Речь же о методологии, а не о проектах
Либо она будет покрыта тестами, либо её не должно существовать
А если не TDD, то тесты писать нельзя, запрещено?
На этот вопрос я ответил чуть дальше этой реплики
Обсуждают сегодня