TGViewer
Defront — про фронтенд-разработку и не только Defront — про фронтенд-разработку и не только @defront · 5.04K subscribers
Post #571 4.09K
В последнее время представители сообщества резко высказываются о RxJS. Бен Леш — один из основных разработчиков RxJS — рефлексирует по этому поводу и делится своими сожалениями — "Observables, Reactive Programming, and Regret".

Первое сожаление — огромное API, которое было унаследовано много лет назад от RxNET. Некоторые операторы следовало бы удалить, но их оставили из-за совместимости.

Второе сожаление — RxJS у основной массы разработчиков ассоциируется с его операторами, а не с Observable. Observable — это паттерн, на котором построена библиотека RxJS. Его реализацию можно найти в других популярных библиотеках, например, в Relay. Сама по себе концепция Observable гораздо важнее чем все хелперы из RxJS, которые её окружают.

Третье сожаление — проект не определил явные границы, где лучше всего использовать библиотеку. При изучении RxJS у разработчиков появляется желание применять её там, где следовало бы использовать альтернативные решения.

Четвёртое сожаление — разработчики ядра библиотеки не делились с сообществом подходами к написанию читабельного кода. Из-за этого возникло недопонимание, и разработчики начали считать, что на RxJS невозможно писать понятный код.

Бен пишет, что планирует поработать над этими проблемами в будущем. Вполне возможно, что в седьмой версии RxJS имплементация Observable будет выделена в отдельный пакет (про это немного говорится в статье) и будет очень сильно упрощён API.

#rxjs #musings

https://dev.to/rxjs/observables-reactive-programming-and-regret-4jm6
DEV Community Observables, Reactive Programming, and Regret As of this writing, I've been working on the RxJS project for almost 6 years, I think. When I started...
More from @defront
  1. Jan 7, 2024Channel name was changed to «Defront — про фронтенд-разработку и не только»
  2. Feb 24, 2022Про войну в Украине Шлю лучи поддержки братьям и сёстрам украинцам. В моём окружении нет н…
  3. Feb 23, 2022Qwik — возобновляемый JavaScript-фреймворк Райан Карниато поделился своими мыслями после р…
  4. Feb 22, 2022Обработка ошибок с помощью reportError Стэфан Джудис рассказал про малоизвестный метод для…
  5. Feb 21, 2022Выбор библиотеки по её размеру Владимир Клепов рассказал про подводные камни выбора библио…
  6. Feb 10, 2022Time-travel debugging в Svelte Сэм Ван Тассел рассказал про DeLorian — новый инструмент дл…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →