![image](https://github.com/user-attachments/assets/c820af22-2916-4105-b7e6-feb85aa4eba2)
파일 맨 끝에는 관습적으로 개행을 추가하는 편인데요. EOF에 대해 찾아보시고 인텔리제이 자동 적용까지 해봅시다!
해당 메서드들을 보면 `run()`을 통해서 입력에 대해서만 테스트가 이루어지고 있는 것 같아요!
2주차에는 각 클래스와 메서드별로 단위테스트를 구현해보면 어떨까요?
테스트 용이성 상승은 곧 좋은 프로덕트 코드의 신호입니다
반대로 테스트 코드를 위해서 프로덕트 코드의 변경이 필요하다? 이는 프로덕트 코드에 대한 리팩토링 신호라고 생각해요
왜...
입력에 대한 검증은 `Calculator`, `BigIntegerCalculator`에서도 검증하고 있어요
두 곳에서 검증하는 로직에 대한 의도는 어떤건지 잘 알 것 같아요
하지만
검증과정을 추가해야한다면 `InputValidator`, `Calculator` 중 어느곳에서 추가해야할지 개발자가 고민을 부담해야해요
또한 또 다른 개발자가 인...
`stringAdd()` 해당 메서드가 어떤 역할을 하는지 바로 이해하기 어려운것 같아요..!
저는 처음 봤을때 문자열을 더한다? 와 같은 의미로 다가왔던 것 같아요
반환 타입이 String은 것을 제외하고는 메서드의 실질적인 동작은 정수를 연산을 진행하는 것으로 보여요
해당 메서드가 어떤 역할을 하는지 이해하기 쉽게 네이밍 해보는 것은 어떨...
`split()` 어떤걸 분리하는지, 뭐를 위해 분리하는지 정확히 어떤 역할을 하는 메서드인지 잘 읽히지 않는 네이밍인것 같아요!
구분자를 통해서 숫자를 추출하는 과정으로 보여요
`parseAndSplitWithSeparators`와 같이 정확히 어떤 동작을 수행하는지 명시해주면 코드의 가독성을 더 높일수 있을 것 같아요
메서드와 변수의 네이...
```suggestion
String input = Console.readLine();
```
해당 변수가 String이라는 것은 타입만 봐도 충분히 알 수가 있어요!
[좋은 코드를 위한 자바 변수명 네이밍](https://tecoble.techcourse.co.kr/post/2020-04-24-variable_naming...