더북(TheBook)

1.3 요약

결괏값을 반환하는 함수를 외부와 상호 작용하는 효과와 명확히 분리함으로써 프로그램을 더 안전하게 만들 수 있다.

함수의 출력이 결정적이고 함수가 외부 상태에 의존하지 않는다면 함수를 더 쉽게 테스트하고 함수의 성질을 더 잘 추론할 수 있다.

더 높은 수준까지 추상화를 추구한다면 안전성, 유지 보수 용이성, 테스트 용이성, 재사용성이 좋아진다.

불변성이나 참조 투명성과 같은 안전성 원칙을 적용하면 프로그램이 상태 변이를 실수로 공유하는 경우를 방지할 수 있다. 다중 스레드 환경에서 발생하는 버그 중 아주 많은 경우가 상태 변이 공유로 인해 생겨난다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.