Задать вопрос
@magary4

Как прокачать навыки функционального программирования?

использую все эти map, reduce, filter итд потому что они есть, но понимаю что это отдельная большая тема и можно достичь высокой производительности и строить красивый код обьеденяя их в цепочки
по каким источникам продвинуть свои навыки в этом направлении?
  • Вопрос задан
  • 109 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 4
Robur
@Robur
Знаю больше чем это необходимо
Изучая функциональное программирование.

Тем немного больше чем .map и reduce.

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

Еще может прояснить изучение документации о том как и почему перешли на функциональный стиль react(хуки) и vue (v3, composition api) - у них хорошие доки, оних много статей и это дает пачку примеров из реальной жизни о том как строить подобные приложения.

Если прямо сильно хотите - выучите хаскель, у вас будет деформация сознания, но функциональности в коде через край.
Ответ написан
Комментировать
@telpenair
Совет по поводу доки реакта мне нравится, я сам с основами ФП именно там познакомился, чистые функции (в реакте больше чистые компоненты), иммутабельность (первое в своё время мне очень зашло и я много где это стал применять, второе - не могу сказать до сих пор в полной мере оценил достоинства, хоть и знаю в теории все преимущества), в общем об этом там много написано, даже без хуков о которых говорилось в комментарии выше.

В функциональном стиле написана библиотека RxJs, с ней можно попробовать написать приложения в реактивном стиле, там много про композицию функций.

Дальше я знаю что есть такая книжка
https://github.com/MostlyAdequate/mostly-adequate-guide
но я смотрел только смешную видеоадаптацию как будто для детей)
https://www.youtube.com/watch?v=h_tkIpwbsxY

По поводу изучения хаскеля. Если хочется изучить фп язык чтобы можно было потом и в хозяйстве применять, но больше в бэкенде, хотя есть и интересный проект scala.js - то есть еще вариант со scala и очень хорошей книжкой именно по функциональному подходу в ней - fp in scala
https://www.manning.com/books/functional-programmi...

Потом если пишете уже приложения на реакте/вью/ангуляре и хочется попробовать что-то близкое но где есть ФП (и не боитесь типизации) - то наверное проще всего попробовать Elm, в целом это такая очень сокращённая версия хаскелля, чтобы сразу не испугаться и не убежать) Последнее время один неплохой автор книг по реакту и редаксу ушел в эльм и пишет по нему статьи/ ведёт стримы
https://maxpfrontend.ru/raspisanie/
https://t.me/maxpfrontend

Если вы занимаетесь кроме js еще и ts, можно попробовать посмотреть на библиотеку fp-ts
https://gcanti.github.io/fp-ts/learning-resources/
Но у меня ощущение что в ней без хоть какого-то бэкграунда в хаскеле/скала (на подходах которых библиотека и построена) будет сложно.
Ответ написан
Комментировать
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Я бы начал с изучения книги Луиса Атенсио "Функциональное программирование на ...
Дальше можно изучить серию статей "Мышление в стиле Ramda" на хабре
Ответ написан
Комментировать
ru_sultanov
@ru_sultanov
студент, начинающий разработчик
Есть неплохой роад мап по ФП в js https://github.com/leandrotk/functional-programmin...
и есть список интересных вещей про ФП в js https://github.com/stoeffel/awesome-fp-js
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы