При прохождении курса C# Professional встретил такой термин как "каррирование". Кто-то может простыми словами и желательно с каким-то примером сказать мне что это такое?
Каррирование - это одна из трёх падаригм функционального программирования.
Термин каррирование означает преобразования одной функции, принимающей несколько аргументов в функцию, берущую свои аргументы по-одному. Так же есть обратный термин - декаррирование.
namespace Main
{
using System;
public class Program
{
public static void Main()
{
Console.WriteLine("Enter your number, please:");
int myNumber = Convert.ToInt32(Console.ReadLine());
MyAction.func = (number) => { return number; };
MyAction.action = (number) => { Console.WriteLine($"\nThis number is: {MyAction.func.Invoke(myNumber)}"); };
MyAction.action.Invoke(MyAction.func);
Console.ReadKey();
}
public static class MyAction
{
public static Func func;
public static Action<Func> action;
}
}
}