Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2020 October 21

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Но фреймворки и само приложение могут формировать при старте такие неймспейсы, как им нужно
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
модули не должны ни модифицировать встроенные классы, ни примешивать что-то к глобалу или к строенным библиотекам через require
ага. то есть модулям не разрешаем. тогда понятно.
источник

LL

Legioner9 Legioner9 in NodeUA - JavaScript and Node.js in Ukraine
как тогда правильно переиспользовать ? просто по мере необходимости подгружать же?
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Legioner9 Legioner9
как тогда правильно переиспользовать ? просто по мере необходимости подгружать же?
ничегонепонимаю
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
что переиспользовать, что подгружать?
источник

LL

Legioner9 Legioner9 in NodeUA - JavaScript and Node.js in Ukraine
сорри - перезалью вопрос когда обдумаю
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
с точки зрения производительности без разницы
с точки зрения WTF/minute лучше require потому что это более общепринято и никто не скажет What the f**k (по-русски “Зачем это здесь?”)
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Elena Sharovar
с точки зрения производительности без разницы
с точки зрения WTF/minute лучше require потому что это более общепринято и никто не скажет What the f**k (по-русски “Зачем это здесь?”)
с точки зрения WTF в принципе любые миксыны - это плохо
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
а с точки зрения юнит тестирования еще - как? для мока тех библиотек то реквайрятся уже есть куча способов их замокать
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Elena Sharovar
а с точки зрения юнит тестирования еще - как? для мока тех библиотек то реквайрятся уже есть куча способов их замокать
с точки зрения тестируемости можно все класть в vm.createContext и vm.Script и перехватывать там любой глобал и рекваер, заменять что угодно
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
меня больше интересует “чистота тестов” - чтобы функции /модули были чистые без side effects и два разных теста не мешали друг другу. если что-то кладется в global это может быть не так
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
эвала там нет, там создаетя V8 изолят, но это похоже, да
источник

LL

Legioner9 Legioner9 in NodeUA - JavaScript and Node.js in Ukraine
ну вроде дошло - приложение нужно запускать внутри  vm.createContext и это будет хорошо
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Elena Sharovar
меня больше интересует “чистота тестов” - чтобы функции /модули были чистые без side effects и два разных теста не мешали друг другу. если что-то кладется в global это может быть не так
глобалов можно создавать сколько угодно и изолировать их
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
это близкий родственник new Function
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
но это не изолят
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Legioner9 Legioner9
ну вроде дошло - приложение нужно запускать внутри  vm.createContext и это будет хорошо
смотря для чего
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
что это?
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
я все эти исходники читал
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Legioner9 Legioner9
и второй вопрос - может уже кто то задумывался над стандартным архетипом перед созданием функции - что бы при изменении ее свойства до вызова она удобно логировала отчет о работе или сразу в ней была бы стандартная шина событий для подписки на  ее действия - речь именно о стандарте
Видимо тебе хочется аоп (хотя, если честно, я вряд ли уловил смысл сообщения), можешь с его практиками ознакомиться
источник