본문 바로가기

Backend/함수형 자바스크립트

(19)
Underscore.js - ArrayLike 이번 포스팅에선 Underscore.js 의 중요 컨셉인 ArrayLike 에 대해 알아보고자 합니다. 이게 함수형과 무슨 상관이야? 라는 생각이 들 수도 있지만 먼저 작성된 포스팅에 적었듯이 함수형의 핵심 컨셉을 Underscore.js 가 제시했기에 그 컨셉이 내부 함수에 어떻게 녹아들어있는지를 알아보려는 의도입니다. - ArrayLike _.each 와 _.map 등 Underscore.js 의 주요 함수는 첫 번째 인자로 아래의 4가지 타입을 받습니다. {} [] arguments ArrayLike 종종 함수를 써오면서 {}, [] 즉 객체와 배열을 받는다는 건 알았지만 특히 ArrayLike 는 뭘까요. console.info(list1[0] === 1 && list1[1] === 2 && li..
Underscore.js Underscore.js 는 꽤나 작은 함수형 자바스크립트 라이브러리 입니다. 제가 처음 이 라이브러리를 접했을 땐, 빈약한 자바스크립트 기본 객체들을 다루기 위한 유틸성 라이브러리로만 생각했습니다. 배열에만 사용할 수 있는 전용 메서드들을 다양한 타입에 적용할 수 있는 정도의 용도로 말이죠. 하지만 이 라이브러리는 자바스크립트를 함수적으로 다루는 패러다임을 제시하고 있습니다. Underscore.js 의 함수들은 간결하고 단순하며 아주 작지만, 함수들 사이에 아주 잘 어우러집니다. 함수의 결과가 또 다른 함수의 인자와 어울리고, 함수로 만든 함수가 다른 고차 함수의 보조 함수로 사용되는 등 연계가 잘 이뤄지도록 되어 있습니다. - Underscore.js 맛보기 함수명만으로 어떤 기능을 하는지 쉽게 알..
함수형 자바스크립트의 시작 함수형 프로그래밍은 성공적인 프로그래밍을 위해 부수 효과를 최대한 멀리하고 조합성을 강조하는 프로그래밍 패러다임입니다. 함수형 프로그래밍이 부수 효과를 최대한 멀리하는 이유 중 하나는 오류를 줄이기 위해서고, 다른 하나는 조합성 혹은 모듈화 수준을 높이기 위해서 입니다. 높은 모듈화 수준은 생산성을 높이고, 오류 없는 함수들의 조합은 프로그램 전체의 안정성을 높여줍니다. 일전에 함수형 자바스크립트 라는 책을 읽으면서 리뷰를 남기기도 했었지만, (관련 링크) 아직은 약간 어색함도 있고 프로그래밍 자체도 해오던 그대로 하는 것 같다는 생각이 들어 함수형 프로그래밍에 대해서 다시 한 번 정리해보고자 합니다. - 함수형 자바스크립트 예제들 함수형 자바스크립트를 책으로 접하면서 알게된 커링, 부분 적용 등의 개념..