목록 보기
잘못 작성된 람다 코드를 삭제하기까지의 여정
백엔드

잘못 작성된 람다 코드를 삭제하기까지의 여정

마켓컬리
마켓컬리
2020년 2월 26일

두줄요약

복잡한 람다식 기반 구독 검증 로직을 의미 있는 이름과 작은 메서드로 분리했습니다. 가독성이 떨어질 때는 람다식 사용 여부를 비교해 판단해야 합니다.

문제 상황

  • Optional 처리 과정에 람다식·복합 조건식이 섞인 구독 서비스 사용 여부 판별 로직
  • 모호한 메서드명과 자연스럽지 않은 파이프라인으로 인한 낮은 가독성

원인 분석

  • 유효성 검증, 상태 확인, 만료 여부 판단을 하나의 람다식에 집중한 구조
  • 코드의 실제 책임과 맞지 않고 시간 의존적인 isUsedOldSubscription 명칭

해결 방법

  • 실제 책임에 맞춰 메서드명을 isValidSubscription으로 변경
  • 기간 타입·만료일 유효성, 사용 가능 여부, 만료 여부, 회원 상태를 작은 private 메서드로 분리
  • 유효성 검사 후 조기 반환하거나 AND 조건을 조합하는 읽기 쉬운 검증 흐름 구성

적용해볼 점

  • 일회성 로직이라도 람다식이 흐름을 가리면 일반적인 조건문 구현과 비교
  • 코드 작성자보다 유지보수 동료와 도메인 지식이 적은 개발자 관점의 명확성 우선

다음 읽기

#Java 주제를 이어서 읽기

잘못 작성된 람다 코드를 삭제하기까지의 여정

복잡한 Optional 람다 기반 구독 검증 로직을 의미 있는 메소드와 조건 분리로 리팩토링했습니다.\n코드 길이보다 검증 의도와 흐름을 쉽게 읽을 수 있는 구조의 중요성을 공유합니다.

마켓컬리
마켓컬리
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...