본문 바로가기

Study/Book

쏙쏙 들어오는 함수형 코딩 / 액션, 계산의 차이

반응형

- 계산은 무엇인가 ? 

계산은 입력값으로 출력값을 만드는 것이다. 실행 시점과 횟수에 관계없이 항상 같은 입력값에 대해 같은 출력값을 돌려준다.

계산은 함수로 구현한다.

- 계산이 액션보다 좋은 점

1. 테스트하기 쉽다

2. 기계적인 분석이 쉽다

3. 계산은 조합하기 좋다

- 계산을 쓰면서 걱정하지 않아도 되는 것

1. 동시에 실행되는 것

2. 과거에 실행되었던 것이나 미래에 실행할 것

3. 실행 횟수

- 계산의 단점

계산과 액션은 실행하기 전에 어떤 일이 발생할지 알 수 없다

 

- 액션이란?

외부 세계에 영향을 주거나 받는 것을 말한다.

액션은 실행시점과 횟수에 의존한다.

ex) 이메일 보내기, 계좌에서 인출하기, 전역변숫값 바꾸기, ajax 요청 보내기

- 액션은 쉽지 않다!!

액션은 사용하기 어렵다. -> 잘 사용하는 방법 : 액션이 호출하는 시점에 의존하는 것을 제한한다.

 

액션 -> 계산 분리 (테스트가 용이하기 위해)

1. DOM 업데이트와 비즈니스 규칙은 분리되어야 한다.

2. 전역변수가 없어야 한다.

3. 전역변수에 의존하지 않아야 한다.

4. DOM을 사용할 수 있는 곳에서 실행된다고 가정하면 안 된다.

5. 함수가 결괏값을 리턴해야 한다.

 

계산 추출 단계

1. 계산 코드를 찾아 빼낸다.

2. 새 함수에 암묵적 입력과 출력을 찾는다.

3. 암묵적 입력은 인자로 암묵적 출력은 리턴값으로 바꾼다.