Обновить
5
0
Боря Федоров@yangirekun

Разработчик интерфейсов

Отправить сообщение

Мне кажется вы привираете, либо неадекватно себя оцениваете. Я тоже учился в Бауманском университете, диплом получил на четыре года раньше вас и не думаю, что за это время там что - то принципиально поменялось. Совмещение фултайм работы и занятий не про это заведение, даже на последних курсах, даже если вы часть учебы отдаете на "аутсорс". Я вполне допускаю, что вы можете быть значительно талантливее меня (и всех моих одногруппников на потоке), очень рано нашли какую - то стажировку, но чтобы все 6 лет совмещать тяжелейшую учебную программу с обучением коллег мидлов, разработкой крутых inner source продуктов и всего остального, о чем вы рассказали - извините, отдает Эриком Давидовичем. Ну или вы гений поколения, который зачем - то рекламирует свой телеграм канал и лутает минусы на Хабре, вместо того, чтобы лутать миллионы в каком - нибудь FAANG

| И почему перестанут конфликтовать на общем функционале, он же останется?

Не перестанут, доработки в библиотеку компонентов или аналогичные модули (которые используют вообще все) всегда придется согласовывать и вносить с оглядкой на обратную совместимость.

Будет меньше заморочек.

Вот есть команда А и Б, есть у этих команд свои модули, есть общий ui-kit, вынесенный в отдельный npm пакет.

Команде А нужно что - то поменять в одном из компонентов kit-a, вносят они эту правку, и оказывается, что в модуле команды Б что - то сломалось. Команда Б об этом узнает только если обновит версию kit-a, может это вообще не понадобится никогда, если модуль команды Б это легаси, которое лениво ковыряют. Но даже если нет - они просто откатят версию кита, отправят команде А багрепорт, и будут дальше работать над своим функционалом.

В монолите, после деплоя доработки командой А, на какое - то время всё встанет у обоих команд.

Преимущества становится еще более очевидными, если допустить, что команд не 2, а 10 :)

Добрый день!

> promise создаёт микротаски, а не макро

Все верно. Об этом было упомянуто в самом конце, возможно стоит подсветить это более явно.

Не совсем понял формулировку "нарушает постановку задач". Скорее всего вы говорите про примеры совместного использования промисов и webAPI, в которых действительно можно увидеть разницу между велосипедом, и тем, как оно работает нативно:

// macrotask queue
setTimeout(() => { console.log(1); }, 0);
PromiseImplementation.resolve().then((x) => { console.log(2); });
console.log(3);
// Output: 3, 1, 2

// microtask queue
setTimeout(() => { console.log(1); }, 0);
Promise.resolve().then(() => { console.log(2); });
console.log(3);
// Output: 3, 2, 1


Мне в голову не пришел адекватный сценарий, при котором такие отличия в работе могут повлиять на заложенную в коде логику. Ввиду этого, использование setTimeout вместо queueMicrotask, показалось допустимым упрощением. Всё таки основной фокус немного на другом.

Разумеется, при разработке промышленного полифила, было бы необходимо учесть и такой кейс. Но тогда бы пришлось использовать setimmediate для IE / Node.js или что - то ещё для конкретной среды. Промисы и queueMicrotask, друг без друга, в природе не встречаются.

Теперь понял, про что речь. Благодарю за разъяснения, чуть позже улучшу код в репозитории и статье.

Здравствуйте!

1) Тоже думал об этом, но позже пришел к выводу, что типизация подписчиков для конечного пользователя через дженерики не имеет особого смысла. Конструкции на скриншоте полностью идентичны, впрочем, это самый простой кейс, поправьте меня, если я что - то упустил или мы говорим о разном.

2) В целях сделать текст чуть проще, setTimeout это основа основ, которая интуитивно понятна любому разработчику, в то время как сравнительно недавно появившийся queueMicrotask, на практике, используется совсем редко.

> заинтересовавшее внимание
Вы этим очень больно делаете
Там же есть кнопка force stop, так что возможность остановить приложение все таки есть
Кто эти люди, которые никогда не слышали про Babel, JQuery, React, npm? x_X

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность