[JAVA / Design Pattern] 정적 팩토리 메서드 이름 짓기
정적 팩토리 메서드 이름 짓기
정적 팩토리 메서드의 단점 중 하나는 생성자는 다른 메서드와 뚜렷이 구분이 되지만,
정적 팩토리 메서드는 구분이 되지 않다는 점이다.
그래서 정적 팩토리 메서드라는 걸 알려주기위해서 이름을 잘 지어야 하는데,
널리 알려진 이름을 알아볼 것이다.
- valueOf : 단순하게 말하자면, 인자로 주어진 값과 같은 값을 갖는 객체를 반환한다는 뜻이다.
따라서 이런 정적 팩터리 메서드는 형변환 메서드이다.
- of : ValueOf를 더 간단하게 쓴 것이다. EnumSet 덕분에 인기를 모은 이름이다.
- getInstance : 인자에 기술된 객체를 반환하지만, 인자와 같은 값을 갖지 않을 수 있다.
싱글톤(singleton) 패턴을 따를 경우, 이 메서드는 인자 없이 항상 같은 객체를 반환한다.
- newInstance : getInstance와 같지만 호출할 때마다 다른 객체를 반환한다.
- getType : getInstance와 같지만 반환될 객체의 클래스와 다른 다른 클래스에 팩터리 메서드가 있을 때
사용한다. Type은 팩터리 메서드가 반환할 객체의 자료형이다.
- newType : newInstance와 같지만, 반환될 객체의 클래스와 다른 클래스에 팩터리 메서드가 있을 때 사
용한다. Type은 팩터리 메서드가 반환할 객체의 자료형 이다.
댓글
댓글 쓰기