Skip to content

Latest commit

 

History

History
62 lines (48 loc) · 3.19 KB

File metadata and controls

62 lines (48 loc) · 3.19 KB

사다리 게임

4단계 - 사다리(리팩터링)

  • PR 반영

    • position 객체화
    • direction enum refactoring with 'move value'
  • PR 반영

    • 리뷰 코멘트의 가이드 코멘트 및 코드를 참고하여 반영해보자.
  • 리팩터링 요구사항

    • 영상 시청 후 In -> Out 방식으로 TDD를 도전해본다.
    • 영상 시청 후 책임 주도 설계(인터페이스) 기반으로 구현해 본다.

3단계 - 사다리(게임 실행)

TODO

  • PR 반영

    • Line 객체에 가변 인자를 받은 생성자를 추가
    • LineGenerator가 generateLine에서 Line 객체를 리턴
    • LineGeneratorTest의 너무 많은 가변인자 테스트 정리->보다 적은수로 경우의 수를 커버
    • Ladder.java에 game Play에 대한 책임 부여 검토
    • Line.java에 LEFT, RIGHT, PASS와 같은 상태값을 enum으로 구현
    • Line의 index 원시값 포장
    • LineGenerator에 현재값,이전값을 가지는 Point 객체 도입 검토
  • 사다리 실행 결과를 출력해야 한다.

  • 개인별 이름을 입력하면 개인별 결과를 출력하고, "all"을 입력하면 전체 참여자의 실행 결과를 출력한다.

프로그래밍 요구사항

  • 자바 8의 스트림과 람다를 적용해 프로그래밍한다.
  • 규칙 6: 모든 엔티티를 작게 유지한다.
  • 규칙 7: 3개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.

2단계 - 사다리 생성

TODO

  • 사다리 실행 결과를 출력해야 한다.

  • 개인별 이름을 입력하면 개인별 결과를 출력하고, "all"을 입력하면 전체 참여자의 실행 결과를 출력한다.

  • PR 반영

  • 사다리 게임에 참여하는 사람에 이름을 최대5글자까지 부여할 수 있다. 사다리를 출력할 때 사람 이름도 같이 출력한다.

  • 사람 이름은 쉼표(,)를 기준으로 구분한다.

  • 사람 이름을 5자 기준으로 출력하기 때문에 사다리 폭도 넓어져야 한다.

  • 사다리 타기가 정상적으로 동작하려면 라인이 겹치지 않도록 해야 한다.

    • |-----|-----| 모양과 같이 가로 라인이 겹치는 경우 어느 방향으로 이동할지 결정할 수 없다.

프로그래밍 요구사항

  • 자바 8의 스트림과 람다를 적용해 프로그래밍한다.
  • 규칙 6: 모든 엔티티를 작게 유지한다.
  • 규칙 7: 3개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.

진행 방법

  • 사다리 게임 게임 요구사항을 파악한다.
  • 요구사항에 대한 구현을 완료한 후 자신의 github 아이디에 해당하는 브랜치에 Pull Request(이하 PR)를 통해 코드 리뷰 요청을 한다.
  • 코드 리뷰 피드백에 대한 개선 작업을 하고 다시 PUSH한다.
  • 모든 피드백을 완료하면 다음 단계를 도전하고 앞의 과정을 반복한다.

온라인 코드 리뷰 과정