추상화 레벨 통일 (Single Level of Abstraction)
- 추상화 레벨(abstraction level)이 통일 되어야하는 이유는
- 컴퓨터 과학에서 높은 레벨 / 낮은 레벨을 구분하는 것 처럼 함수도 높은 레벨/ 낮은 레벨을 구분해서 사용해야한다는 원칙!
function 커피만들기 (){
// 어쩌구저쩌구 엄청 복잡한 커피 만드는 과정.
}
이렇게 한 함수에 로직을 많이 넣지말고
function 커피만들기(){
물끓이기();
에스프레소추출하기();
물에다에스프레소넣기();
}
이런식으로 함수를 계층으로 나눈다.
이제 커피만들기 함수는 이해하기 쉬워졌고! 낮은 레벨을 이해해야한다면 해당 레벨의 함수를 보면 되는것