티스토리 뷰
메모이제이션이란?
함수에 프로퍼티를 추가하여 값을 캐시한 후에 다음 호출 시점에 복잡한 연산을 건너 뛰도록 하는 패턴
예제를 보면 이해가 쉽다.
<소스>
func이란 함수 객체에 cache 프로퍼티를 추가하여 결과값을 저장해 놓은 뒤
두번 째 호출 부터는 if(func.cache[param]) 과정을 건너뛰게 된다.
커링이란?
커링은 참 신기한놈이다. 함수와 인자의 새로운 조합으로 새로운 함수를 만드는 것이다.
어떤 함수를 호출할 때 대부분의 인자값이 비슷하다면 커링을 사용하는 것이 좋다. 매개변수(인자)를 일부 적용시키고
새로운 함수를 동적으로 생성 할 수 있기 때문이다.
<소스>
<결과>