Scala Каталог функциональных шаблонов проектирования

Начиная с недели я читаю Программирование в Scala. Авторы вводят элементы языка шаг за шагом, но я все еще смущен, когда использую функциональные вещи, такие как актеры, закрытие, каррирование,....

Я ищу каталог типичных вариантов использования или лучших практик для функциональных задач.

Я не имею в виду переопределение хорошо известного шаблона, такого как GoF в Scala, например

Ответ 1

Смущение о том, когда использовать закрытие или каррирование, похоже на путаницу в том, когда использовать классы. Они всего лишь часть языка и служат любой задаче, на которую вы ее положили. Когда OO впервые попала в мейнстрим, почти такой же вопрос задавали классы.

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