2017-01-19 3 views
0

Что такое преимущество использования RxJS операторов, такие как карты и фильтр по сравнению с просто выполняют те же операции значений, возвращаемых в подписываться функции? Это быстрее?RxJS - Какой смысл операторам?

ответ

3

Бывают случаи, когда вы не можете выполнять все синхронно. Например, если вы хотите сделать перерыв на основе некоторых испущенных данных и работу с данными, испускаемыми остальным-вызовом.

Или, если у вас есть 2 отдельных потока, но есть необходимость в том, где вам нужно выполнить их по порядку (возможно, даже на основе друг друга), очень просто просто связать их.

Также он делает тестирование намного проще и точнее, когда у вас очень маленькие функции с вводом и выводом.

Но как и все: только потому, что большая компания использует это, автоматически не означает, что для вашего небольшого хобби-проекта имеет смысл реализовать каждый последний бит того, что они используют в проекте с несколькими разработчиками.


Что касается производительности: Нет, с помощью rxjs-операторов является не самым быстрым способом манипулирования данных, но он предлагает целую массу других функций (некоторые из них уже упоминались выше), которые перевешивают (очень маленькие) влияние этого на производительность. - Если вы повторяете через большие массивы пару раз в секунду, я предлагаю вам не использовать RxJS по очевидным причинам.

0

Некоторые преимущества

  • декларативного
  • Повторное использование

Я имею в виду, если вы подписались в другом месте вам нужно будет дублировать те же действия, которые находятся в подписываться. Но если вы объявляете операторов как часть цепочки, вы всегда будете выполнять то же самое, когда вызывается.

Смежные вопросы