단어 정리
순수 함수 (Pure Function)
부작용이 없는 함수로 함수의 실행이 외부의 상태를 변경시키지 않는 함수를 의미한다.
순수한 함수는 멀티 스레드 환경에서도 안전하고, 병렬처리 및 계산이 가능하다.
오직 입력에 의해서만 출력이 정해지고, 환경이나 상태에 영향을 받아서는 안된다는 의미이다.
보일러 플레이트 코드(상용구 코드)
수정하지 않거나 최소한의 수정만을 거쳐 여러 곳에 필수적으로 사용되는 코드
이와 같은 코드는 최소한의 작업을 하기 위해 많은 분량의 코드를 작성해야 하는 언어에서 자주 사용한다.
SideEffect
쉽게 말해서 실행 중에 어떤 객체를 접근해서 변화가 일어나는 행위(라이브러리 I/O, 객체 변경 등)입니다.
예제
X = 3+4;
위 표현식에는 1개의 side Effect가 있습니다.
Y = x++;
위 표현식에는 2개의 side 이펙트가 있습니다.
3 + 4
위 표현식은 side effect가 없습니다.
If (flag) {
Foo()
}
위 표현식은 flag가 true 일 경우에 한해서 잠재적 side effect가 있습니다.
1급 객체
아래와 같은 조건을 만족하는 객체
- 변수나 데이터 구조안에 담을 수 있다.
- 파라미터로 전달 할 수 있다.
- 반환값으로 사용 할 수 있다.
- 할당에 사용된 이름과 관계없이 고유한 구별이 가능하다.
- 동적으로 프로퍼티 할당이 가능하다.