Skip to content

4. 함수 조립하기

Cojamm edited this page Nov 19, 2017 · 1 revision

함수형 자바스크립트 기법을 잘 활용하면 소프트웨어의 기능을 변경하거나 추가하기가 쉽다. 작은 단위로 쪼갠 함수들을 조합하여 큰 기능을 만들면 조합된 함수 사이사이에 새로운 함수를 추가하는 식으로 쉽게 확장해 나갈 수 있다.

다음은 이 책의 내용 요약이자 필자가 생각하는 함수형 자바스크립트의 10가지 기법이다.

  1. 함수를 되도록 작게 만들기
  2. 다형성 높은 함수 만들기
  3. 상태를 변경하지 않거나 정확히 다루어 부수 효과를 최소화하기
  4. 동일한 인자를 받으면 항상 동일한 결과를 리턴하는 순수 함수 만들기
  5. 복잡한 객체 하나를 인자로 사용하기보다는 되도록 일반적인 값 여러 개를 인자로 사용하기
  6. 큰 로직을 고차 함수로 만들고 세부 로직을 보조 함수로 완성하기
  7. 어느 곳에서든 바로 실행하거나 혹은 미뤄서 실행할 수 있도록 일반 함수이자 순수 함수로 선언하기
  8. 모델이나 컬렉션 등의 커스텀 객체보다는 기본 객체를 이용하기
  9. 로직의 흐름을 최대한 단방향으로 흐르게 하기
  10. 작은 함수를 모아 큰 함수 만들기

4장에서는 작은 함수로 큰 함수를 만드는 방법들을 다룬다. 객체지향에 빗대어 표현하면 클래스와 인스턴스에 대해서 처음 다루는 장이라고 할 수도 있겠다. 자바스크립트에서 함수로 함수를 조립하는 방법들에 대해 확인해 보자.

목차

  1. 함수형 자바스크립트 소개
    1. 함수형 자바스크립트 그거 먹는 건가요?
    2. 함수형 자바스크립트의 실용성
    3. 함수형 자바스크립트의 실용성 2
    4. 함수형 자바스크립트를 위한 기초
  2. 함수형 자바스크립트를 위한 문법 다시보기
    1. 객체와 대괄호 다시 보기
    2. 함수 정의 다시 보기
    3. 함수 실행과 인자 그리고 점 다시보기
    4. if else||&& 삼항 연산자 다시 보기
    5. 함수 실행의 괄호
    6. 화살표 함수
    7. 정리
  3. Underscore.js를 직접 만들며 함수형 자바스크립트의 뼈대 익히기
    1. Underscore.js 소개
    2. _.map과 _.each 구현하기
    3. _.filter, _.reject, _.find, _.some, _.every 만들기
    4. _.reduce 만들기
    5. 좀 더 발전시키기
  4. 함수 조립하기
    1. 고차 함수와 보조 함수
    2. 부분 적용
    3. 연속적인 함수 실행
    4. 더 나은 함수 조립
  5. Partial.js와 함수 조립
    1. 파이프라인
    2. 비동기
    3. 고차 함수
    4. 파이프라인2
    5. 템플릿 함수
    6. 지연 평가와 컬렉션 중심 프로그래밍
  6. 값에 대해
    1. 순수 함수
    2. 변경 최소화와 불변 객체
    3. 기본 객체 다루기
    4. 정리
  7. 실전에서 함수형 자바스크립트를 더 많이 사용하기
    1. _.each, _.map
    2. input tag들을 통해 form data 만들기
    3. 커머스 서비스 코드 조각
    4. 백엔드와 비동기
  8. 함수형으로 만드는 할 일 앱
    1. 할 일 앱 만들기(1)
    2. 할 일 앱 만들기(2)
  9. 메모이제이션
    1. memoize 함수
    2. 메모이제이션과 불변성, 그리고 할 일 앱
    3. 마무리 하며

Clone this wiki locally