static 을 사용하게 되면
프로그램이 실행될 때 프로그램 전역적으로 생성되어
모든 객체가 이를 알 수 있게 된다고 알고 있습니다
이는 객체지향적이지 못하다는 생각이 들었고
그렇기에 상수라고 꼭 static 을 써야 하나?
라는 생각이 들었고
상수라고 해도 클래스끼리 공유하지 않는 경우가 많았기에
꼭 static 을 사용하지 않아...
저는 패턴에 대해 매칭되는 부분을 찾는 것도 "구분자 추출" 메서드의 역할이라고 생각했는데요!
아래에서 짚어주신 것처럼, find후 예외처리 하는 영역을 별도로 분리하고 pattern 변수도 static으로 정의하면
좀 더 메서드가 간결해질 것 같네요 ㅎㅎ
감사합니다 :)
이 부분은 저도 고민이 들었던 부분입니다..
validate 라는 메서드가 형변환한 값을 return 해버리면
검증과 형변환이라는 두가지의 책임을 지게 된다고 생각하여
두 가지 메서드로 나누어 parseInt() 메서드가 두 번 호출되는 로직이 생겼습니다
결국은 하나의 메서드가 하나의 책임을 지도록 하기 위해 이처럼 구현했습니다!
중복...
안녕하세요!
저는 메시지 상수를 둘 수 있는 곳이
크게 세 가지의 분류로 나눌 수 있다고 생각합니다!
### 1. print 메서드 내 리터럴 작성
1번 같은 경우에는
코드를 직접 읽으며 어떤 메시지가 출력되는지 확인할 수 있다는 장점이 있습니다
하지만 같은 메시지가 여러 곳에서 사용된 경우
메시지 값에 대한 변경이 발생하게 되...
"//"와 "\\n"를 커스텀 구분자 지정 문자 접두사, 접미사로 변수화해서 관리하는 건 어떨까요?
"\\n" 인덱스를 한 번 찾아서 커스텀 문자열을 구할 때 재사용하는 게 좋긴 한데 string의 startWith() 메소드와 contains() 메소드를 활용하면 가독성을 높을 수 있습니다. 기존 코드에서 주석을 추가하면 어떨까요?