- 수동 추첨번호 입력 추가
- 입력한 금액, 자동생성 숫자, 수동생성 번호 입력
-
입력: 금액
-
입력: 수동 구매 횟수
- 수동 구매 횟수가 입력한 금액횟수를 넘으면 안된다.
-
로또관리: 자동 로또, 수동로또 분리
- 자동 로또는 입력받은 금액에서 수동 금액을 제외한 횟수만큼 생성해야한다.
-
로또관리: 자동로또, 랜덤 생성 수동 로또 합치기
- 2등을 위해 추가 보너스를 더 추첨한다.
- 당첨 통계에도 2등을 추가해야 한다.
- 보너스 번호 추가
- 로또 추첨번호 (로또 객체 + 보너스 번호) 래퍼 클래스 추가
- Enum 클래서 당첨 금액 추가
- UI Input 수정
- UI Output 수정
- 규칙 3: 모든 원시값과 문자열을 포장한다.
- 규칙 5: 줄여쓰기(축약어) 사용금지
- 규칙 8: 일급 콜렉션을 쓴다.
- 예외 처리를 통해 에러가 발생하지 않도록 한다.
- 모든 기능을 TDD로 구현해 단위 테스트가 존재해야 한다. (UI로직 제외)
- java enum을 적용해 프로그래밍을 구현한다.
- indent depth 2를 넘지 않도록 구현한다.
- 함수의 길이가 15라인을 넘어가지 않도록 한다.
- 자바 코드 컨벤션을 지키면서 프로그래밍 한다.
- else 예약어를 사용하지 않는다.
- 예외처리
- java8 에 추가된 Optional을 적용해 NPE 발생 방지
- 로또 자동 생성은 Collections.shuffle() 메소드 활용