
우리가 클린 코드를 추구하는 이유 추상이 왜 중요한지 알아보자. 프로그램의 정의 추상을 알아보기 전에 프로그램의 정의에 대해 먼저 알아보자. 
뇌 메모리 적게 쓰기 데이터라는 식재료를 가지고 우리가 코드로서 어떻게 요리를 해야 될지 그 요리 방법, 논리 구조, 사고의 흐름을 어떻게 가져가면 좋을지에 대해 이야기 해보자.

추상의 관점으로 바라보는 객체 지향 우리가 흔히 생각하는 프로그래밍 패러다임의 3가지 절차지향 -> 정해진 순서, 차례대로 컴퓨터의 처리 구조와 유사하게 처리하는 프로그래밍 객체 지향 -> 객체들을 만들어서 객체들 간의 협력을 통해 프로그래밍이 이루어지는 프로그래밍

상속과 조합 조합은 하나의 객체가 자신이 필요한 객체를 가져다가 필드에 선언해서 사용하는 형태를 의미한다. 결합도란 한쪽에서 수정을 가했을 때 다른 쪽에서 수정이 많이 일어나고 있다면 결합도가 높은것이다. Value Object 
주석의 양면성 
중복들 if 문 밖으로 빼자.StudyCafePassType을 이미 선택했기 때문에 이걸로 filter 해주고 중복제거 해주면 된다.모두 중복이다. if문 밖으로 빼자.사물함 이용권을 고르는 로직을 메서드로 추출해보자.사용자가 선택한 고정석 날짜에 따라 그에 맞는 락커