221207 - 리팩토링

Cornchip·2022년 12월 7일
0

Today-I-Learned

목록 보기
8/28

목차
1. 리팩토링



1. 리팩토링

1) 리팩토링이 아주 중요해진 이유

  • 서비스 오픈 후 변화의 폭이 크다
    • 절대 바뀌지 않는다는 정책이 바뀜 (ex. 국내전용>>글로벌, pc전용>>모바일)
    • 중간에 추가적인 레이어가 하나씩 더 들어가는 경우가 흔함.
    • 기존 구조를 뒤흔드는 기능추가를 하는 경우가 많음.
  • 1번의 큰 변화는 프로젝트를 최소 1.5배 이상 복잡하게 만든다.
  • 이 복잡성을 줄여주는 것이 바로 리팩토링

2) 리팩토링의 주요 포인트

  • 일정에 맞추느라 품질이 다소 떨어졌던 부분
  • 서비스에서 핵심적이면서 사용자 경험에 큰 영향을 끼치는 부분
  • 복잡도가 높고 향후 기능 추가, 변경 가능성이 높은 부분
  • 타 서비스에서도 활용할만한 공통적인 기능
    • 외부 라이브러리나 시스템으로 도출
  • 테스트코드 등도 가능
  • 도전적인 부분
    • 새로운 기술로 성능 향상이나 유지보수성 향상이 가능한 부분
    • 기존보다 더 좋은 구성 방법이 생각나는 부분

3) Magic Number 문제 해결하기

  1. Constant인 부분을 final 필드로 선언해서 명확한 필드명으로 사용하기
  2. enum class에 필요한 상수를 직접 설정하기
  3. enum class에 필요한 상수를 직접 설정하고 필요한 로직까지 담아서 설정하기
profile
cornchip

0개의 댓글