[워밍업 클럽 2기 - Clean Code & Test Code] 2주차 발자국
1개월 전
워밍업 클럽 2기: Clean Code & Test Code의 2주차 발자국 작성입니다.
✍ 학습 내용 복습
이전의 클린 코드에 대해 학습한 내용을 직접 코드에 적용해서 리팩토링하는 시간을 가졌습니다.
메서드 추출 시 고려할 점
중복 제거
무조건적인 중복 제거 보다는 상황에 맞춰서(어설픈 중복 제거 보다는 사람들이 이해하기 쉬운 코드가 더 좋음!)
주변의 추상화 레벨과 동떨어져 있는지 항상 확인
객체의 책임 파악 시 고려할 점
책임은 상황에 따라서 변할 수 있음
예시
특정 주문의 할인 금액과 총 가격을 출력하는 기능이 있다고 가정하자. 할인 금액과 총 가격이 단순히 출력 용도로만 사용된다면 해당 가격 계산을 출력을 담당하는 클래스에서 정의할 수 있겠지만, 보통은 추후에 다른 곳에서도 사용될 가능성이 있기 때문에 주문 클래스의 책임으로 만드는 것이 더 좋은 설계일 가능성이 높다(물론 이것은 상황에 따라 언제든지 변할 수 있다)
🤔 회고
처음부터 내가 설계한 코드를 리팩토링 하는 것과 남의 코드를 리팩토링 하는 것은 굉장히 다르다는 것을 체감했다
남의 코드 리팩토링 하는 것이 더 어렵다 😭
그냥 강의만 듣고 넘어가는 것 보다, 코드를 작성하고 강사님의 코드와 비교하는 것이 학습에 훨씬 도움이 된다!
🔍 참고
댓글을 작성해보세요.