일급 기능이란 무엇입니까?
"일류 기능"은 기능에 대한 처리가 일련의 지침을 준수하는 경우 컴퓨터 프로그래밍 및 컴퓨터 과학에서 컴퓨터 프로그래밍 언어에 적용 할 수있는 용어입니다. . 일류 함수 컴퓨터 프로그래밍 언어를 갖기 위해서는 지원해야 할 주요 기능은 함수를 다른 함수에 인수로 전달하는 기능입니다. 함수를 변수에 할당하여 저장할 수 있어야합니다. 1 급 함수를 구성하는 요소를 결정하는 데 사용되는 다른 속성에는 런타임시 함수를 동적으로 생성하는 기능과 다른 함수의 반환 값으로 함수를 갖는 언어 기능이 포함됩니다. 일급 함수 아키텍처를 지원하는 언어는 높은 수준의 추상화를 허용하며 경우에 따라 런타임 동적 코드 생성을위한 메커니즘을 제공합니다.
"함수"라는 용어가 느슨하게 정의 된 의미로 사용될 때, 변수를 통해 프로그램 내에서 함수를 전달한다는 개념은 기본적으로 일류 함수 지원을 구현하는 언어에 고유하지는 않습니다. 코드 블록을 함수로 전달하거나 함수에서 비 동적 코드를 반환하는 기능은 다양한 메커니즘을 통해 많은 프로그래밍 언어에서 쉽게 수행 할 수 있습니다. 그러나 일급 함수 언어 정의의 엄격한 부분 중 하나는 변수로 함수를 처리하는 것은 조건부 정의와 같은 메타 데이터를 사용하지 않고 컴파일러를 호출하지 않고 기본적으로 수행해야한다는 것입니다. 암호. "함수"라는 용어는 자체적으로 호출되는 독립 코드 블록을 나타내는데도 사용됩니다. 즉, 객체 지향 프로그래밍 언어의 메소드로 알려진 코드 블록이나 다른 언어의 프로 시저라고하는 블록을 포함하지 않습니다.
언어가 일급 함수 코드를 허용하도록 설계된 경우 일부 디자인 패턴을 다른 언어보다 직접 구현할 수 있습니다. 함수는 함수를 변수로 수신 한 다음 새 함수를 구성하고 새 함수를 호출 코드로 리턴 할 수 있으므로 프로그램 코드의 런타임 작성 메커니즘을 작성합니다. 또한 반영 또는 평가와 같은 프로세스를 사용하지 않고도 언어 내에서 실시간 사용자 입력 기능을 사용할 수 있습니다.
일류 함수 아키텍처에 대한 가장 기본적인 용도 중 일부는 쉽게 재사용 할 수있는 일반 함수를 작성하고 방정식이 진행됨에 따라 자체 수정이 가능한 재귀 수학 알고리즘을 구현하는 것입니다. 일류 메커니즘에 대한 유사하고 고급화 된 용도 중 하나는 구체적으로 구현되지 않은 언어로 다형성을 구현하는 것입니다. 이를 통해 동일한 함수 시그니처로 함수를 호출 할 수 있지만, 때로는 다형성 함수에 키 함수를 전달하여 호출 된 컨텍스트에 따라 코드를 실행할 수 있습니다.