함수형 자바스크립트 프로그래밍

date
slug
functional-javascript-programming
status
Published
tags
PL & Compiler
summary
type
Post

함수형 프로그래밍의 정의에 대한 글

  • 폴리글랏 프로그래밍 - 임백준
    • 오래된 뿌리를 가지고 있는 오래된 미래
  • 클로저 프로그래밍의 즐거움 - 마이클 포거스
    • 우리도 정답을 모른다. 함수형 프로그래밍은 명확한 정의가 없는 컴퓨팅 용어 중 하나
    • 컴퓨터 과학 전문가들의 정의들끼리도 종종 서로 모순되기도 한다.
    • 어떤 언어를 선호하는지에 따라 달라지게 마련
    • 함수형 프로그래밍은 애플리케이션, 함수의 구성 요소, 더 나아가 언어 자체를 함수처럼 여기도록 만들고, 이러한 함수 개념을 가장 우선순위에 놓는다.
    • 함수는 값으로 다룰 수 있어서 다른 데이터들과 마찬가지로 저장이 가능하고, 전달하거나, 리턴 받을 수도 있다. - 이것이 함수형 프로그래밍의 가장 중요한 개념
고차함수
  • 함수를 인자로 받아 대신 실행하는 함수
  • 함수를 리턴하는 함수
  • 함수를 인자로 받아서 또 다른 함수를 리턴하는 함수
함수형 프로그래밍의 절반은 ‘고차 함수를 적극적으로 활용하는 프로그래밍’이라고도 할 수 있다.
 
일급 객체
  • 변수에 담을 수 있다.
  • 함수나 메서드의 인자로 넘길 수 있다.
  • 함수나 메서드에서 리턴할 수 있다.
일급 함수
  • 아무 때나(런타임에서도) 선언이 가능하다.
  • 익명으로 선언할 수 있다.
  • 익명으로 선언한 함수도 함수나 메서드의 인자로 넘길 수 있다.
 

© hyuunnn 2024