inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

인프런 워밍업 스터디 클럽 3기 2주 차 발자국

이동원
0

코드 다듬기와 리팩토링에 대한 요약

1. 코드 다듬기

2. 리팩토링

3. 리팩토링 사례

리팩토링 성공 사례

  1. 중복 제거 및 메서드 추출:
    중복된 로직을 제거하고 메서드로 분리해 가독성과 재사용성을 높였다.

  2. StudyCafePassMachine 의존성 주입:
    필요한 의존성을 외부에서 주입받도록 하여 내부 구현을 외부에 노출하지 않도록 개선했다.

  3. 도메인 모델 개선:

    • StudyCafePassTypeLOCKER_TYPES 상수를 선언해 사물함 관련 로직을 간단하게 처리했다.

    • 특정 타입만 처리하는 로직을 enum 내부에서 해결하도록 하여 책임 분리를 명확히 했다.

  4. Order 도메인 추출:
    스터디 카페 좌석 이용권과 사물함 이용권을 합친 Order 도메인을 새로 만들어 FixedPassType 관련 분기문을 간소화했다.

놓친 부분과 개선 방향

  1. FileHandler 개선 필요:
    데이터를 가져오는 로직만 포함되어 있으나, File 관련 로직이 추가되면 클래스가 방대해질 우려가 있다. Provider를 통해 데이터 요구사항 중심으로 설계하는 것이 바람직하다.

  2. 도메인과 View 로직 분리 부족:
    StudyCafePassType enum에 입력 관련 필드(command)가 포함되어 있어 도메인 모델과 View 로직이 섞였다. 이는 입력 방식 변경 시 도메인 모델까지 수정해야 하는 문제를 초래한다.

4. 최종 결론

답변 0