Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 June 13

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Это нормальная практика,  GRASP:Creator, ответственность за создание структурхых компонентов Application ложится на конструктор Application, композиция называется, можно и другой порождающий шаблон, фабрика тоже пожходит. Почему это вас удевляет? Как предлагаете?
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Не знаю эрланг, но разве его процессы связаны с процессами (потоками) ос? Я думал это какие-то внутренние сущности, которые менеджерятся рантаймом эрланга, и физически весь миллион процессов эрланга может "висеть" на одном ядре процессора
источник

KL

Konstantin Lobkov in NodeUA - JavaScript and Node.js in Ukraine
Не знаю, что предложить. Просто когда увидел, мысль в голову пришла, что кроме как интеграционным тестом это не проверить.
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Почему не проверить?
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Юниттест может создавать объекты через new
источник

KL

Konstantin Lobkov in NodeUA - JavaScript and Node.js in Ukraine
Вот вопросы ещё. Если, как вы говорите, для крупных приложений, энтерпрайза, не совсеме подходит rest. То что использовать? RPC? Есть ли хорошие статьи как его варить?
источник

KL

Konstantin Lobkov in NodeUA - JavaScript and Node.js in Ukraine
Ну как мы замокаем всё, что в конструкторе создаётся? Если только в sandbox поместить
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
мокнув require
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Это условно говоря :)
источник

KL

Konstantin Lobkov in NodeUA - JavaScript and Node.js in Ukraine
Непривычно такое проворачивать :) ощущение что это как-то неправильно
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Это распространенное ощущение у людей привыкшим к каким-нибудь другим способам в других языках )
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
А как же явные зависимости, чтобы зависили только от аргументов, а не от импортов?
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
А теперь вброшу - и что же это даст в языке, где нельзя выразить в сигнатуре зависимость от интерфейса а не реализации?
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
composability  например?
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Разверните мысль :)
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Ну типа, как комбинировать ф-ции, которые зависят от импортов?
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Ну у нас контракты только в голове получается
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
А зачем их комбинировать? Я сейчас говорю не "в общем случае", а вот о сценариях когда импорты используются для доставки зависимости в сервисы, которые являются синглтонами
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Ну делая импорт мы намертво привязываетмся к конкретной реализации, если сделать это аргументом, то можно переиспользовать ф-цию с разными реализациями(контракт в голове)
Не будем же мокать рекваир для прода?
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
Конечно. Если будет такая необходимость - сменим на аргумент конструктора
источник