Максим Ральф

Объясните пожалуйста зачем мы сначала результат getImpelementation() присваиваем в makeValidator, а потом makeValidator() присваиваем в validator? Почему мы не можем работать с makeValidator?

3 0

Тут два момента. getImpelementation нужен чтобы выбрать правильную реализацию валидатора для текущего запуска тестов. Это особенность тестов для тестов. Второй момент, валидатор можно мутировать, а значит он должен создаваться как отдельный объект. Эта тема подробнее раскрывается в курсе по ооп и дизайну.

0

Kirill Mokevnin, но почему не получается, даже чисто технически, обратиться к методам makeValidator.addCheck(fn) и makeValidator.isValid(data)?

0

Потому что makeValidator это просто функция, которая возвращает нужный объект.

0

Похожие вопросы

Artem 2 дня назад →

Здравствуйте! Не могу понять что вызывает ошибку: ```FUNCTION_VERSION=wrong3 suppressor fail 'jest' paralle...

eifory 3 дня назад →

Не могу победить это: FUNCTION_VERSION=wrong3 suppressor fail 'jest' make: *** [Makefile:5: test] Terminat...

fessan 3 дня назад →

Привет! Из теста Выберите верные утверждения Если обнаружился баг, то сначала надо написать тест и только ...

Edgar Tomeyan 4 дня назад →

Напомните, пожалуйста, а когда мы в рамках курсов профессии узнали что такое класс?

Evgeny Zhdanov 04 января 2020 →

Добрый день, а объясните, пожалуйста, выбор матчера, почему toBe(false / true), а не toBeFalsy() / toBeTrut...

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →