CHAPTER 10 일급 함수 I
- 코드의 냄새: 함수 이름에 있는 암묵적 인자
- 특징
- 거의 똑같이 구현된 함수가 있다
- 함수 이름이 구현에 있는 다른 부분을 가리킨다
- 특징
- 리팩터링: 암묵적 인자를 드러내기
- 단계
- 함수 이름에 있는 암묵적 인자를 확인한다
- 명시적인 인자를 추가한다
- 함수 본문에 하드 코딩된 값을 새로운 인자로 바꾼다
- 함수를 호출하는 곳을 고친다
- 단계
- 리팩터링: 함수 본문을 콜백으로 바꾸기
- 단계
- 함수 본문에서 바꿀 부분의 앞부분과 뒷부분을 확인한다
- 리팩터링 할 코드를 함수로 빼낸다
- 빼낸 함수의 인자로 넘길 부분을 또 다른 함수로 빼낸다
- 단계
리팩터링: 암묵적 인자를 드러내기
일급 값(first-class value)은 언어에 있는 다른 값처럼 쓸수 있다
일급인 것과 일급이 아닌 것을 구별하기
자바 스크립트에서 일급이 아닌것
- 수식 연산자
- 반복문
- 조건문
- try/catch 블록
객체와 배열을 너무 많이 쓰게 됩니다
데이터 지향(data orientation)은 이벤트와 엔티티에 대한 사실을 표현하기 위해 일반 데이터 구조를 사용하는 프로그래밍 형식
어떤 문법이든 일급 함수로 바꿀 수 있습니다
고차함수(higher-order function)는 함수를 인자로 받거나 함수를 반환하는 함수
이것은 무슨 문법인가요?
함수를 정의하는 방법