[Spring] if-else를 사용하지 않는 유연한 팩토리 클래스 구현하기
개발을 하다 보면 추상화를 위해 하나의 인터페이스 또는 추상 클래스가 여러 구현체를 갖는 경우가 자주 있습니다. 이때 특정 타입의 구현체를 찾아주어야 하는 팩토리 클래스를 만드는 것이 불가피한데, 이 팩토리 클래스를 유연하게 만드는 방법에 대해 알아보도록 하겠습니다. 1. if-else로 팩토리 클래스 구현하기 [ if-else로 팩토리 클래스 구현하기 ] 우리가 다양한 로그인 방법을 지원하기 위해 이를 LoginService라는 하나의 인터페이스를 만들고, 웹 로그인, 모바일 로그인, SNS 로그인과 같이 3가지 구현체를 두었다고 하자. public interface LoginService { void login(); } LoginController에서는 로그인 타입을 파라미터로 받아서, 타입에 맞는 ..
Spring
2022. 6. 2. 10:00