подразумеваю как в жаве, мутить костыли - зачем? выдумывать проблемы и их решения? зачем?
1. утверждение, что это костыли, ещё надо доказать. Можно говорить, что это не удобно без интерфейсов и абстрактных классов, потому что интерфейс в итоге описан неявно. Но в JS ВСЕ типы неявные, потому что это динамическая + утиная типизация. 2. иногда проблемы выдуманные и не надо тянуть, а иногда не выдуманные. Для DIp примеры не выдуманных проблем: - unit тестирование в философии nodejs - сущность, у которой могут меняться реализации зависимостей в разных ситуациях
а зачем описывать их неявно, если можно явно?)
Вопрос на уровне "зачем писать на js, если можно писать на других языках". Тогда аргументация сводится к "DIP в JS не надо реализовывать, потмоу что не надо писать на JS вообще"
вопрос "зачем писать ооп на жсе, если есть тс?"
Мне немного неудобно одновременно обсуждать и вопрос про DIP и вопрос про ООП. С первым пришли к консенсусу или ещё нет?
ну у меня изначально такой вопрос и был, да, формально жс ОО, да МОЖНО костылить, я это не отрицал. но зачем?
Я не понял, как этот вопрос относистя к моему вопросу...
ну так дип так обсуждаем в оо контексте)
Не понял, что под этим имеется в виду
имеется в виду тоже самое, зачем на жсе делать костыли, если можно не делать? :D да, на жсе можно закостылить ОО абстракции, но зачем, если они есть в тсе?
> имеется в виду тоже самое, зачем на жсе делать костыли, если можно не делать? :D В этот вопрос добавлено сразу два необоснованных утверждения. Это не костыли, а работа на языке с динамической утиной типизацией. У неё есть свои недостатки, такие же, как и при любой другой работе в языке. зачем - чтобы решать проблемы > если можно не делать Альтернативные решения не всегда есть, и не всегда лучше. Например, для мока в тестировании по философии nodejs плохо делать подмену работы require
да типизация тут не причем, конкретно если ты можешь написать "%KeyWord% %InterfaceName%" чтобы класс имплементил интерфейс, то все ок, а если приходится делать класс с названием интерфейса и как-то прокидывать его то это костылинг, тк в языке не предусмотрено чтобы ты этим занимался без пердолинга
> а если приходится делать класс с названием интерфейса и как-то прокидывать его то это костылинг Ок, не делаем так. Ещё есть проблемы?
Обсуждают сегодня