람다 표현식과 고차 함수

Michael Jang·2024년 2월 26일

dart

목록 보기
3/3

다트 프로그래밍 언어

람다 표현식과 고차 함수

Dart에서 람다 표현식과 고차 함수는 함수형 프로그래밍 패러다임을 지원하는 중요한 특징입니다. 이들은 코드를 더 간결하고 유연하게 만들어 줍니다.

람다 표현식 (익명 함수)

람다 표현식은 이름이 없는 함수로, 간결한 방식으로 함수를 정의하고 사용할 수 있게 해줍니다. Dart에서는 화살표(=>)를 사용하여 람다 표현식을 간단히 표현할 수 있습니다.

  • 예시
var add = (int a, int b) => a + b;
print(add(2, 3)); // 출력: 5

이 예제에서, add 변수에 두 정수를 매개변수로 받고 더한 결과를 반환하는 람다 표현식을 할당합니다.

고차 함수

고차 함수는 다른 함수를 매개변수로 받거나 함수를 반환하는 함수입니다. Dart에서는 이를 통해 더 동적이고 재사용 가능한 코드를 작성할 수 있습니다.

  • 함수를 매개변수로 받는 고차 함수 예시
void operate(int a, int b, Function(int, int) operation) {
  var result = operation(a, b);
  print(result);
}

operate(2, 3, (a, b) => a * b); // 출력: 6

이 예제에서 operate 함수는 세 번째 매개변수로 함수(operation)를 받아, 그 함수에 ab를 인자로 넘겨 실행합니다. 여기서 operation은 람다 표현식을 사용하여 정의됩니다.

  • 함수를 반환하는 고차 함수 예시
Function multiply(int n) {
  return (int a) => a * n;
}

var doubler = multiply(2);
print(doubler(3)); // 출력: 6

이 예제에서, multiply 함수는 정수 n을 받고, 정수 a를 받아 n과 곱한 결과를 반환하는 람다 표현식을 반환합니다. 이를 통해 doubler 함수는 multiply 함수에 의해 반환된 람다 표현식을 참조하게 됩니다.

람다 표현식과 고차 함수의 장점

  • 간결성: 코드를 더 간결하고 이해하기 쉽게 만듭니다.
  • 재사용성: 고차 함수를 사용하면 기존 함수를 다양한 방식으로 재사용할 수 있습니다.
  • 유연성: 람다 표현식과 고차 함수를 활용하면 더 동적인 프로그래밍이 가능해집니다.

정리

람다 표현식과 고차 함수는 Dart 프로그래밍에서 강력한 도구입니다. 이들은 함수형 프로그래밍의 원칙을 따르며, 코드의 재사용성과 유연성을 높여줍니다. Dart에서 이러한 기능들을 적극적으로 활용하면 더 효율적이고 유지보수하기 쉬운 코드를 작성할 수 있습니다.

profile
코딩하는_크리미와_치치

0개의 댓글