[워밍업 클럽 2기 - Clean Code & Test Code] 2주차 발자국

워밍업 클럽 2기: Clean Code & Test Code의 2주차 발자국 작성입니다.

1주차 발자국 보러가기

 

학습 내용 복습

이전의 클린 코드에 대해 학습한 내용을 직접 코드에 적용해서 리팩토링하는 시간을 가졌습니다.

메서드 추출 시 고려할 점

  • 중복 제거

  • 무조건적인 중복 제거 보다는 상황에 맞춰서(어설픈 중복 제거 보다는 사람들이 이해하기 쉬운 코드가 더 좋음!)

  • 주변의 추상화 레벨과 동떨어져 있는지 항상 확인

 

객체의 책임 파악 시 고려할 점

  • 책임은 상황에 따라서 변할 수 있음

  • 예시

    • 특정 주문의 할인 금액과 총 가격을 출력하는 기능이 있다고 가정하자. 할인 금액과 총 가격이 단순히 출력 용도로만 사용된다면 해당 가격 계산을 출력을 담당하는 클래스에서 정의할 수 있겠지만, 보통은 추후에 다른 곳에서도 사용될 가능성이 있기 때문에 주문 클래스의 책임으로 만드는 것이 더 좋은 설계일 가능성이 높다(물론 이것은 상황에 따라 언제든지 변할 수 있다)

 

🤔 회고

  • 처음부터 내가 설계한 코드를 리팩토링 하는 것과 남의 코드를 리팩토링 하는 것은 굉장히 다르다는 것을 체감했다

  • 남의 코드 리팩토링 하는 것이 더 어렵다 😭

  • 그냥 강의만 듣고 넘어가는 것 보다, 코드를 작성하고 강사님의 코드와 비교하는 것이 학습에 훨씬 도움이 된다!

🔍 참고

댓글을 작성해보세요.

채널톡 아이콘