함수와 스코프 실행 경계
함수는 입력, 처리, 반환을 묶고 스코프는 이름이 유효한 범위를 정해 충돌과 예측 불가능성을 줄인다.
| 구성 | 역할 | 좋은 기준 | 실수 신호 |
|---|---|---|---|
| Input | 매개변수로 필요한 값 받기 | 외부 상태 의존 최소화 | 전역 변수를 몰래 읽음 |
| Body | 하나의 책임 처리 | 작고 목적이 분명함 | 여러 일을 한 함수에 섞음 |
| Return | 결과를 호출자에게 돌려줌 | 반환 타입이 예측 가능 | 조건마다 반환 형태가 다름 |
| Scope | 이름이 유효한 범위 제한 | 블록과 함수 범위 활용 | 넓은 범위 변수 남용 |
| Closure | 필요한 상태를 기억 | 의도한 상태만 캡처 | 오래된 값과 공유 참조 혼동 |
함수 경계가 좋으면 입력과 출력이 보이고, 스코프 경계가 좋으면 이름 충돌과 숨은 상태가 줄어든다.