Тема
- #fp
- #Effect
- #Фреймворк
- #Функциональное программирование
- #Библиотека
Создано: 2024-07-30
Создано: 2024-07-30 10:40
В последние несколько лет функциональное программирование стало довольно популярным.
Если объектно-ориентированное программирование создает структуры,
то функциональное программирование обеспечило краткость и ясность кода на более детальном уровне.
Конечно, популярность функционального программирования циклична и повторяется с определенной периодичностью.
Вслед за этой тенденцией стали появляться различные библиотеки.
На мой взгляд, FxTsпредставлял собой всего лишь набор инструментов, использующих генераторы для ленивой оценки.
lodash также производил впечатление набора инструментов.
Конечно, эти наборы инструментов помогают в декларативном программировании.
Но нам нужно было нечто большее, чем просто наборы инструментов, — нам нужны были отображения, соответствия, монады и еще больше монад.
fp-tsсоответствовал этим требованиям, а его разработчик был истинным приверженцем функционального программирования.
Однако несколько месяцев назад я узнал, что эта библиотекаEffectбыла объединена с другой.
Поэтому я решил изучить Effect, и там я обнаружил кое-что новое.
Для использования Effectнеобходимо обладать базовыми знаниями о нем.
Библиотеку можно просто взять и использовать, если ее API хорошо документирован, но фреймворк требует понимания его структуры и принципов работы.
В Effectобъекты вместо обертывания в Observable, как в RxJs, обертываются в Effect, и эти объекты передаются далее,
словно async — заражая всё вокруг.
Для работы с объектами Effectфункции, которые их используют, также должны быть Effect.
Как, например, в случае с programв приведенном выше коде.
Конечно, есть функции, которые используются в качестве начальной точки, но они не настолько элегантны.
В любом случае, структура и чистота Effectкак фреймворка, привносят новые идеи и стандарты в мир Node.js, и я надеюсь, что он принесет перемены в эту сферу.
Комментарии0