Skip to content

초록 스터디 자바 기초 과정 로또 미션을 위한 저장소

Notifications You must be signed in to change notification settings

SEUNGBOONG/java-lotto-clean-playground

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

기능 요구사항

  • 로또 구입 금액을 입력하면 구입 금액에 해당하는 로또를 발급해야 한다.
  • 로또 1장의 가격은 1000원이다.

프로그래밍 요구사항

  • 배열 대신 컬렉션을 사용한다.
  • 축약 금지
  • 함수(또는 메서드)의 길이가 10라인을 넘어가지 않도록 구현한다.
  • 함수(또는 메서드)가 한 가지 일만 하도록 최대한 작게 만들어라.

기존 프로그래밍 요구사항

  • 자바 코드 컨벤션을 지키면서 프로그래밍한다.
  • 기본적으로 Java Style Guide을 원칙으로 한다.
  • indent(인덴트, 들여쓰기) depth를 2를 넘지 않도록 구현한다. 1까지만 허용한다
  • 3항 연산자를 쓰지 않는다.
  • else 예약어를 쓰지 않는다
  • if문에서 값을 반환하는 방식으로 구현하면 else 예약어를 사용하지 않아도 된다.

새로운 프로그래밍 요구사항

Model LottoRate

  • enum에서 데이터 꺼내오기
  • 수익률 계산하기
  • 수동 로또도 포함

LottoTicket

  • 일급 컬렉션으로 로또 관리

LottoTicketDto

  • outputView에서 상속을 위한 가상 일급컬렉션 생성

LottoTickets

  • 무작위 숫자에서 생성된 로또 여러 가지 티켓 관리하는 일급 컬렉션

NumberGenerator

  • 로또 생성하는 인터페이스 생성

RandomNumberGenerator

  • 인터페이스를 오버라이딩해 로또를 만드는 메서드

Ranking

  • 클린 코드를 위한 enum 사용

TicketCount

  • 티켓 갯수를 받는 메서드 구현

WinningLotto

  • 당첨 갯수 확인하는 메서드
  • 보너스 볼 추가

View

InputView

  • 구입 금액 입력받기

  • 보너스 볼 입력 메서드 구현

  • 수동 로또 구매 메서드 OutputView

  • 출력하기

  • 당첨 번호 출력

  • 당첨 통계 출력

  • 총 수익률 출력


Controller

  • 작동

About

초록 스터디 자바 기초 과정 로또 미션을 위한 저장소

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%