Lambda Expression   람다 표현식

(2024-06-22)

Anonymous Function, 익명 함수, 람다 함수


1. 람다 표현식, 람다식 (Lambda Expression)함수를, 하나의 식(Expression) 그 자체에 포함시켜 표현한 것

  ㅇ (어원)
     - 함수 정의와 응용에 대한 형식 체계에서 수학적인 단순 표기법으로, 
     - 함수 매개변수람다(λ)로 표시한데서 유래함

  ㅇ (익명 함수)
     - 만일, 함수 정의 전체를 람다식으로 간략히 표현하게 되면, 
     - 이때, 이름이 필요 없게 되므로, 익명 함수(Anonymous Function)의 형태가 됨

  ㅇ (특징)
     - [장점]
        . 코드의 간결성 (불필요한 반복문 대신 사용, 복잡한 식을 단순하게 표현 가능)
        . 표현식 자체에 개발자의 의도가 명확히 드러나, 가독성이 높아짐
        . 병렬 프로그래밍 용이 (멀티 스레드 활용 가능)
     - [단점]
        . 람다에 의한 익명 함수는 재사용 불가능해짐
          .. (람다의 남발은 유사 함수의 중복 생성으로 코드가 지저분해짐)
        . 디버깅이 다소 어려움
        . 재귀로 만들기에 부적합

  ㅇ 例)
     - 파이썬) lambda args : expression
        . square = lambda (x) : (x**2); square(2) => 4
           .. 변수 square에 람다 표현식이 바인딩 됨. 후에 함수 처럼 이를 호출 가능하게 됨
           .. 여기서, 람다 표현식 내 x는 바인딩 변수(bound variable) 또는 매개변수
 

2. 익명 함수 (Anonymous Function, Nameless Function)

  ㅇ 이름이 없는 함수로써, 익명 함수들은 모두 일급 객체 임
     - (일급 개체 특징 : 일급 함수변수처럼 사용가능하며, 매개 변수로 전달이 가능하는 등)

  ※ [참고] ☞ 자바스크립트 함수 종류 참조

[프로그래밍 기타일반]1. 프로그래밍 기타 용어   2. 래퍼 함수   3. 핸들   4. 단락 평가   5. 템플릿   6. 히어 도큐먼트   7. 람다 표현식, 익명 함수   8. 부수 효과   9. 메모이제이션  

  1. Top (분류 펼침) New     :     1,592개 분류    6,515건 해설

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)          편집 후원          편집 이력