기능 요구사항

  • 초간단 자동차 경주 게임을 구현한다.
  • 주어진 횟수 동안 n대의 자동차는 전진 또는 멈출 수 있다.
  • 사용자는 몇 대의 자동차로 몇 번의 이동을 할 것인지를 입력할 수 있어야 한다.
  • 전진하는 조건은 0에서 9 사이에서 random 값을 구한 후 random 값이 4이상일 경우이다.
  • 자동차의 상태를 화면에 출력한다. 어느 시점에 출력할 것인지에 대한 제약은 없다.

프로그래밍 요구사항

  • 모든 로직에 단위 테스트를 구현한다. 단, UI(System.out, System.in) 로직은 제외
    • 핵심 로직을 구현하는 코드와 UI를 담당하는 로직을 구분한다.
    • UI 로직을 InputView, ResultView와 같은 클래스를 추가해 분리한다.

프로젝트 순서

1. README.md 파일에 기능 목록 단위 추가

 - 생략 : 다음 프로젝트는 이거부터 하기

2. 설계 - Class Diagram 그리기

 - 생략 : 추후 공부 후 그리기

3. 구현 & 구현 중 신경 쓴 부분

 - Domain, View를 나눠서 구현

 - Method 당 하나의 역할만 하게 구현

 - OOP성격에 맞게 구현

 - Domain 소스 모두 테스트 용이하게 구현

============================================

 4. Review & Feedback

 - this로 호출 가능한 생성자를 위에 올려 가독성 향상

 - 계속 반복해서 쓰이는 값은 상수로 관리

 - 변수명 축약 사용 금지

 - 람다식 변수명 네이밍 제대로 하기

 - 접근 지정자 관리

  :

 

 

 

 

'50. Back-end > 55. TDD' 카테고리의 다른 글

1-4. 자동차경주 기능추가  (0) 2022.10.30
1-1 어쩌구 저쩌구  (0) 2022.10.28
0-1. OT & MindSet & ETC  (0) 2022.10.19

+ Recent posts