세 번째 미션 - 지하철 경로 조회

Posted by yunki kim on June 2, 2022

  요구 사항

    - step1:

경로 조회 API 구현하기

요금 계산 방법

  • 기본운임(10㎞ 이내): 기본운임 1,250원
  • 이용 거리 초과 시 추가운임 부과
    • 10km~50km: 5km 까지 마다 100원 추가
    • 50km 초과: 8km 까지 마다 100원 추가

    - step2

추가된 요금 정책

노선별 추가 요금

  • 추가 요금이 있는 노선을 이용 할 경우 측정된 요금에 추가
    • ex) 900원 추가 요금이 있는 노선 8km 이용 시 1,250원 -> 2,150원
    • ex) 900원 추가 요금이 있는 노선 12km 이용 시 1,350원 -> 2,250원
  • 경로 중 추가요금이 있는 노선을 환승 하여 이용 할 경우 가장 높은 금액의 추가 요금만 적용
    • ex) 0원, 500원, 900원의 추가 요금이 있는 노선들을 경유하여 8km 이용 시 1,250원 -> 2,150원

연령별 요금 할인

  • 청소년: 운임에서 350원을 공제한 금액의 20%할인
  • 어린이: 운임에서 350원을 공제한 금액의 50%할인

 

  첨음으로 API 명세를 보고 API를 구현하는 미션이였다. 도메인이 이전 미션들에 비해 까다로워서 많은 고생을 했던 미션이다. 그에 따라 테스트를 최대한 촘촘히 구성했다. 테스트 커버리지가 거의 100%가 나왔다. 오예~. 아키텍처에 대해 공부하면서 배웠던 것들을 적용해 볼 수 있는 미션이였다.

  당연히 여러 흠이 있겠지만, 그래도 지금까지 해온 미션 중 가장 맘에 드는 코드가 나온 미션이다. 그러면 뭐하나 .. 또 몇달 지나면 이 코드가 쓰래기처럼 보일텐데.

  1단계가 바로 머지되서 놀랐다.. 이게 바로 머지가 되네...

  실무에 비해선 별로 어려운 도메인도 아닐텐데 이걸 해매냐... 더 잘하고 싶은데... 지친다..