Евгений Политико
Инженер-программист в Шмаков Медиа · 23.03
Код справа (см.картинку) тоже понятен и надежен. Но он НЕ так явно передает понимание того что и зачем происходит.
Здесь тайм-аут через Promise.race, а сбор данных через Promise.allSettled. Это страшно запутывает код!
Если делать корректно, то нужно убрать таймеры и добавить асинхронный коллектор данных, похожий на Map, который можно использовать в комбинации с async\await синтаксисом. Collector скрывает сложность асинхронного программирования по абстракции высокого уровня, что приводит к понятному и надежному прикладному коду.
Исходный код понятен и надежен, но он не так явно передает намерение и суть происходящего.
#educationАлександр Светлаков
· 23.03
Если честно, то оба кода не очень читабельны.
ответить
Павел Полунин
· 23.03
Однако интересно...
ответить
еще контент автора
еще контент автора
Евгений Политико
Инженер-программист в Шмаков Медиа · 23.03
войдите, чтобы увидеть
и подписаться на интересных профи