다트(Dart)란 무엇인가요?
다트(Dart)는 Google에서 개발한 상당히 강력하고 유연한 프로그래밍 언어입니다. 이는 객체 지향 프로그래밍과 타입 안전성을 강조하며, 그것은 모바일, 웹 및 서버 개발에 이상적인 도구입니다. 특히 Flutter, Google의 모바일 UI 프레임워크와 함께 사용됩니다.
람다 기능이란 무엇인가요?
람다는 본질적으로 함수를 다른 함수에 전달하거나 반환값으로 사용하기 위한 코드 조각입니다. 종종 ‘익명 함수’ 라고도 하는데, 이는 이름 없이 작성되고 실행될 수 있기 때문입니다.
고차함수란 무엇인가요?
고차함수는 다른 함수를 입력값으로 받거나, 결과값으로 함수를 반환하는 함수를 의미합니다. 이는 함수를 마치 데이터처럼 처리하여 다른 함수에 전달할 수 있습니다.
람다와 고차함수의 예제
아래 예제는 다트의 람다와 고차함수를 어떻게 사용하는지 보여줍니다.
void main() {
Function addNumbers = (a, b) => print(a + b);
myHigherOrderFunction("Hello", addNumbers);
}
void myHigherOrderFunction(String message, Function myFunction) {
print(message);
myFunction(10, 20);
}
예제 설명
위의 코드에서, “addNumbers”는 람다함수입니다. 이 함수는 두 개의 숫자를 받아서 더한 값을 출력합니다. 그리고 “myHigherOrderFunction”은 고차함수입니다. 이는 문자열과 함수를 입력받아, 문자열을 출력하고 입력받은 함수를 실행합니다. main 함수에서는 고차함수에 람다함수를 전달합니다. 따라서 프로그램을 실행하면, 먼저 “Hello”라는 메시지가 출력되고, 그 다음으로 람다함수에 의해 10과 20의 합인 30이 출력됩니다.