이 부분은 저도 고민이 들었던 부분입니다..
validate 라는 메서드가 형변환한 값을 return 해버리면
검증과 형변환이라는 두가지의 책임을 지게 된다고 생각하여
두 가지 메서드로 나누어 parseInt() 메서드가 두 번 호출되는 로직이 생겼습니다
결국은 하나의 메서드가 하나의 책임을 지도록 하기 위해 이처럼 구현했습니다!
중복...
안녕하세요!
저는 메시지 상수를 둘 수 있는 곳이
크게 세 가지의 분류로 나눌 수 있다고 생각합니다!
### 1. print 메서드 내 리터럴 작성
1번 같은 경우에는
코드를 직접 읽으며 어떤 메시지가 출력되는지 확인할 수 있다는 장점이 있습니다
하지만 같은 메시지가 여러 곳에서 사용된 경우
메시지 값에 대한 변경이 발생하게 되...
"//"와 "\\n"를 커스텀 구분자 지정 문자 접두사, 접미사로 변수화해서 관리하는 건 어떨까요?
"\\n" 인덱스를 한 번 찾아서 커스텀 문자열을 구할 때 재사용하는 게 좋긴 한데 string의 startWith() 메소드와 contains() 메소드를 활용하면 가독성을 높을 수 있습니다. 기존 코드에서 주석을 추가하면 어떨까요?
저도 코드 리뷰를 받으면서 많이 받은 리뷰가 검증 로직의 책임이 어디에 있어야 하는지 생각해 보면 좋을 것 같다는 말이었는데요, 정말 좋은 규칙인 것 같아요!
getter와 setter 부분에서도 어떻게 하면 같은 로직을 getter와 setter를 사용하지 않고 구현했는지도 고민되었는데, 많이 배워가요!
이런 부분 설명 정말 좋네요! 제가 고민했던 부분들이 많이 완화되는 부분인 것 같습니다.
추가적으로, 리뷰 요청하실 때 MVC 패턴을 적용하지 않은 코드라고 하셨는데 저는 개인적으로 지금 준서님이 작성하신 코드가 MVC 패턴과 유사하게 작동하고 있다고 생각합니다! 이 부분은 어떻게 생각하시는지 궁금해요~
안녕하세요, 준서님! 밀린 리뷰 요청이 많아 이제야 리뷰 드립니다.
MVC 패턴을 사용하지 않으셨다고 하셨는데, 큰 흐름 자체가 저에게는 MVC와 비슷하게 느껴지는 코드였어요.
그리고 객체지향 원칙을 철저히 지키시고, 자바의 기본 문법이 왜 쓰이는지를 잘 알고 사용하시는 것 같아 배울 점이 정말 많은 코드라고 생각했습니다! 다른 분들과 리뷰하신 부분...
안녕하세요, 준서님! 밀린 리뷰 요청이 많아 이제야 리뷰 드립니다.
MVC 패턴을 사용하지 않으셨다고 하셨는데, 큰 흐름 자체가 저에게는 MVC와 비슷하게 느껴지는 코드였어요.
그리고 객체지향 원칙을 철저히 지키시고, 자바의 기본 문법이 왜 쓰이는지를 잘 알고 사용하시는 것 같아 배울 점이 정말 많은 코드라고 생각했습니다! 다른 분들과 리뷰하신 부분...