새소식

반응형
250x250
📁 프로젝트 일지/👩‍🏫 공공 교육 서비스

14.코드 리팩토링(1) - 불필요한 부분 삭제하기

  • -
728x90
반응형

🦮 스스로를 위한 리팩토링 일지 가이드

1️⃣ 리팩토링 이전 코드는 어떠했는가

2️⃣ 어떻게 리팩토링하였는가

3️⃣ 리팩토링 이후 코드는 어떻게 개선되었는가

 

 

지저분하고 가독성이 좋지 않은 코드의 가장 큰 이유 중 하나는 '꼭 필요하지 않은 부분' 때문이라고 생각한다.

프로젝트 코드를 몇 군데 살펴보니 기능 구현에 급급해 필요없는 부분을 정리하지 못한 부분이 많이 보였다.

따라서 다음과 같은 부분들을 우선 정리했다.

 

1.사용하지 않는 파일/클래스

2.사용하지 않는 주석

3.사용하지 않는 로직

 

2️⃣ 어떻게 리팩토링하였는가

 

전자정부 프레임워크에 처음 DB를 연동할 당시 테스트를 위해 만들어 놓았던 테스트 VO, mapper들

구조 파악에 참고했던 전자정부 자체 샘플 프로젝트 관련 클래스들을 모두 삭제하였다.

샘플 클래스를 삭제하면서 자연스럽게 샘플 관련 설정들도 삭제해서 클래스가 꽤 많이 줄었다.

 

회원가입을 동기->비동기 처리

로그인을 컨트롤러 자체->스프링 시큐리티

로 수정하면서 이전에 구현했던 로직을 주석처리하고 잊고 있었는데, 이 부분을 모두 삭제했다.

 

또한 오류났을 때 사용했던 디버깅문이 여러 개 있는데, 또 필요해질 것 같은 부분을 빼고는 다 지웠다.

 

로그인에 스프링 시큐리티를 적용하고 나서 로그인 성공 후 회원 정보를 세션에 등록할 때, 연습할 겸 회원 권한까지 세션에 등록하는 로직을 작성했었다.

하지만 현재 프로젝트에서 시큐리티 인가 기능은 사용하고 있지 않기 때문에 사실상 무의미하므로 해당 로직을 지웠다.

 

 

3️⃣ 리팩토링 이후 코드는 어떻게 개선되었는가

 

👉 총 9개의 파일/클래스 삭제

 

👉 코드 총 67줄 삭제

 

👉 코드 34줄 -> 20 감소

 

이로써 프로젝트도 한결 가벼워지고 코드 가독성이 한층 향상되었다.

다만 모든 클래스를 살펴본 건 아니고 일부만 살펴본 거라서 앞으로도 계속 삭제할 부분이 생길 듯하다.

728x90
반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.