Repository files navigation
Package
Class
Description
Container DependencyInjectionContainer 의존성 주입 컴포넌트 컨테이너
Controller PurchaseLottoController 메인 로직 컨트롤러
Service
AmountService `PurchaseAmount` & `ProfitAmount` 비즈니스 로직 처리
LottoService `Lotto` & `Lottos` 비즈니스 로직 처리
Model
PurchaseAmount 로또 구입 금액
ProfitAmount 로또 당첨 금액
Bonus 로또의 보너스 번호
WinningLotto 로또의 당첨 번호 & `Bonus`를 관리하는 일급 컬렉션
Lotto 로또의 숫자를 관리하는 일급 컬렉션
PurchasedLottos 구매한 `Lotto`(들)을 관리하는 일급 컬렉션
Command
PurchaseAmountCommand 로또 구입 금액 입력 검증 커맨드
LottoCommand 로또의 당첨 번호 입력 검증 커맨드
BonusCommand 로또의 보너스 번호 입력 검증 커맨드
View
View 사용자 입/출력 처리
DTO
PurchaseAmountUserInput 로또 구입 금액 사용자 입력
WinningLottoUserInput 로또의 당첨 번호 사용자 입력
BonusUserInput 로또의 보너스 번호 사용자 입력
MatchResult `PurchaseLottos`의 당첨 결과
MatchResults `MatchResult`의 일급 컬렉션
Exception
GlobalException 전역 에러 처리
⬜✅
기능
컴포넌트
구현
브랜치
예외처리
GlobalException
✅전역 예외처리
exception
InputException
✅사용자 입력 관련 예외처리
AmountException
✅금액 관련 예외처리
LottoException
✅로또 관련 예외처리
로또 구입 금액 사용자 입력
PurchaseAmountCommand
✅`PurchaseAmount` 유효성 검증
feat/purchase-amount-input
View
✅`PurchaseAmountUserInput` 사용자 입력 처리
PurchaseAmountCommand
✅`PurchaseAmountUserInput` 반환
로또 구매
Lotto
✅1장 가격 상수
feat/purchase-lottos
LottoService
✅`Lotto` 1장 가격 반환
AmountService
✅`PurchasedLottos` 구매
PurchasedLottos
✅`PurchasedLottos` 생성
LottoService
✅`PurchasedLottos` 발행
Lotto
✅`Lotto` 오름차순 정렬
리팩토링
View
✅`displayOutPut` 메서드 추가
refactor
ValidateCommand
✅사용자 입력 재시도 로직 추가
Lotto
✅`LottoTest` 통과 하기 위한 검증 로직 추가
당첨 번호 입력
LottoCommand
✅`Lotto` 당첨 번호 유효성 검증
feat/winning-lotto-input
View
✅`WinningLottoUserInput` 당첨 번호 사용자 입력 처리
LottoCommand
✅`WinningLottoUserInput` 당첨 번호 반환
LottoService
✅`WinningLottoUserInput`를 `WinningLotto`로 변환
보너스 번호 입력
BonusCommand
✅`Bonus` 보너스 번호 유효성 검증
feat/lotto-bonus-input
View
✅`Bonus` 보너스 번호 사용자 입력 처리
✅`Bonus` 반환
LottoService
✅`WinningLotto`에 보너스 번호 추가
로또 당첨 조회
LottoService
✅`WinningLotto`와 `PurchasedLottos` 매칭 여부
feat/match-winning-lotto
LottoService
✅`MatchResults` 반환
MatchResult
✅`MatchResult` 생성
MatchResults
✅`MatchResult` 추가
로또 당첨 통계 출력
ProfitRate
✅`ProfitRate` 수익률 생성
feat/match-winning-lotto-output
ProfitAmount
✅`ProfitAmount` 수익 금액 생성
AmountService
✅`ProfitRate` 반환
LottoProfitCommand
✅`MatchResult` & `ProfitRate`당첨 금액 및 수익률 출력 커맨드 생성
View
✅`LottoProfitCommand`로 수익률 출력
출력 리팩토링
OutputCommand
✅출력 로직 개선
refactor-output
로또 컨트롤러
LottoController
✅로직 조합
dev/controller
의존성 주입
DependencyInjectionContainer
✅컴포넌트 의존성 주입
dev/dependency
출력 포맷 리팩토링
ValidateCommand
✅개행문자 추가
refactor-output-message
✅구매 금액 자료형 변경
✅숫자 포맷 가독성 향상
LottoConstant
✅상수 병합
Command
✅패키지 수정
You can’t perform that action at this time.