[kotlin] 고차 함수와 인라인 함수의 사용 용도
고차 함수와 인라인 함수는 Kotlin에서 함수형 프로그래밍을 지원하는 강력한 기능입니다.
고차 함수
고차 함수란, 함수를 인자로 받거나 함수를 반환하는 함수를 말합니다. 이를 통해 코드를 더 유연하게 작성할 수 있습니다.
fun calculate(x: Int, y: Int, operation: (Int, Int) -> Int): Int {
return operation(x, y)
}
val sum = { x: Int, y: Int -> x + y }
val multiply = { x: Int, y: Int -> x * y }
println(calculate(3, 4, sum)) // 7
println(calculate(3, 4, multiply)) // 12
인라인 함수
인라인 함수는 고차 함수를 사용할 때 발생하는 오버헤드를 줄여줍니다. 함수가 호출될 때 해당 함수의 코드가 호출되는 곳에 직접 복사되어 실행됩니다. 이렇게 하면 함수 호출에 따른 오버헤드를 줄일 수 있어 성능을 향상시킬 수 있습니다.
inline fun calculate(x: Int, y: Int, operation: (Int, Int) -> Int): Int {
return operation(x, y)
}
val result = calculate(3, 4) { x, y -> x + y }
println(result) // 7
사용 용도
고차 함수는 매개변수나 반환 타입으로 함수를 사용해야 하는 경우에 유용하게 활용됩니다. 인라인 함수는 성능을 향상시키고자 할 때 사용합니다.
고차 함수와 인라인 함수를 적절히 활용하여 Kotlin 언어의 강력한 함수형 프로그래밍 기능을 최대한 활용할 수 있습니다.
참고 문헌: