> For the complete documentation index, see [llms.txt](https://seokrae.gitbook.io/sr/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://seokrae.gitbook.io/sr/java-1/java/tdd/lotto.md).

# 로또

## 1단계 문자열 덧셈 계산기

* [x] [1차 문자열 덧셈 계산기](https://github.com/next-step/java-lotto/pull/1242)

> 문자열 1차 피드백

* [매직넘버란? -> 어려운 리터럴 문자를 쉽게 이해하기 위함인데 상수화가 꼭 필요한지?](https://github.com/next-step/java-lotto/pull/1242#discussion_r594298154)
* [조건문도 메서드 시그니처를 통해 의미 부여하기](https://github.com/next-step/java-lotto/pull/1242#discussion_r594304155)
* [getter는 도메인 로직에서 최대한 줄이기](https://github.com/next-step/java-lotto/pull/1242#discussion_r594307685)
* [요구사항 미흡 (음수 값 예외처리)](https://github.com/next-step/java-lotto/pull/1242#discussion_r594310922)

## 2단계 로또(자동)

> 로또 (자동) 1차 피드백

* [long 반환 타입인데 중복되는 로직 삭제](https://github.com/next-step/java-lotto/pull/1255#discussion_r595985358)
* [return 로직 위치 변경](https://github.com/next-step/java-lotto/pull/1255#discussion_r595986529)
* [굳이 없어도 되는 Getter 삭제](https://github.com/next-step/java-lotto/pull/1255#discussion_r595990045)

## 3단계 로또(2등)

> 로또 (2등) 1차 피드백

* [꼭 필요한 주석?](https://github.com/next-step/java-lotto/pull/1261#discussion_r596771924)
* [엘레강트 오브젝트](https://github.com/next-step/java-lotto/pull/1261#discussion_r596800376)
* [지엽적인 변수명](https://github.com/next-step/java-lotto/pull/1261#discussion_r596801645)
* [순환참조 구조](https://github.com/next-step/java-lotto/pull/1261#discussion_r596803272)
* [compareTo 이슈 발생 가능성](https://github.com/next-step/java-lotto/pull/1261#discussion_r596806649)
* [연산처리](https://github.com/next-step/java-lotto/pull/1261#discussion_r596810848)
* [메서드 내에 유효성검사 간결하게 표현하기](https://github.com/next-step/java-lotto/pull/1261#discussion_r596825348)
* [객체의 상태값 관리 생각하기](https://github.com/next-step/java-lotto/pull/1261#discussion_r596829039)

![step3](/files/-MXqUAIKzWAOjXZKDsWU)

## 4단계 로또(수동)

> 로또 (수동) 1차 피드백

* [기본 생성자가 꼭 필요한 것인지?](https://github.com/next-step/java-lotto/pull/1273#discussion_r598077223)
* [메서드 컨벤션](https://github.com/next-step/java-lotto/pull/1273#discussion_r598077620)
* [연산 최소화하기](https://github.com/next-step/java-lotto/pull/1273#discussion_r598077940)
* [boolean 반환 타입 메서드 컨벤션](https://github.com/next-step/java-lotto/pull/1273#discussion_r598078056)
* [객체 책임](https://github.com/next-step/java-lotto/pull/1273#discussion_r598078595)
* [객체 비교 테스트](https://github.com/next-step/java-lotto/pull/1273#discussion_r598078862)
* [JUnit API 더 알아보기](https://github.com/next-step/java-lotto/pull/1273#discussion_r598078901)
* [예외가 발생하는 시나리오를 파악하기 -> 무분별한 테스트 코드 X](https://github.com/next-step/java-lotto/pull/1273#discussion_r598079069)
* [인터페이스를 통한 여러 구현체를 사용하는 장점에 대해서 생각해보기](https://github.com/next-step/java-lotto/pull/1273#discussion_r598079685)
* [static 메서드로 구성된 클래스는 맞는건가?](https://github.com/next-step/java-lotto/pull/1273#discussion_r598080023)

![step4](/files/-MXqUAILsWRubHZ8x8Ac)
