calculate라는 메소드 안에서 패턴분리하고 계산까지하는 로직이 하나로 합쳐셔 있는 것 같아서 [SRP 원칙](https://inpa.tistory.com/entry/OOP-%F0%9F%92%A0-%EC%95%84%EC%A3%BC-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EB%8A%94-SRP-%EB%8B...
여러 테스트 케이스를 진행 하셔서 기능 동작의 완성도를 높이신것 같습니다.
다만 테스트 메서드가 정확히 어떤 테스트 케이스를 실행하면 기대 결과가 무엇인지 보이지 않아 코드를 하나하나 읽고 유추해야 해서 메서드 네이밍을 조금 더 신경쓰신다면 더 좋은 테스트 코드가 될 것 같습니다
좋은 의견 감사합니다. 리뷰를 계속 진행하면서 돌이켜보면 컨트롤러 보다는 `Runner`라는 이름이 더 알맞은것 같네요
> input을 controller 내부에서 받는 방식으로 인해 테스트를 할 수 없는 구조라고 생각합니다. run(String input) 이런식으로 구성한다면 테스트를 할 수 있는 코드가 될 수 있을 것 같습니다. 그리고 결과...
0과 - 같은 요소들도 상수로 선언하신 것은 단순 반복을 제거하기 위한 의도일까요??
제 개인적인 생각으로는 이 요소들은 오히려 상수를 사용하는 것이 가독성을 떨어뜨릴 수도 있다고 생각합니다. '단순한 0, -가 아닌 다른 특별한 정보를 담고 있나?'라고 생각될 가능성도 있는 것 같아서요!
또한 상수도 static 영역이므로 프로그램이 실행될 때 ...