회원가입

3. [인터페이스분리원칙] 인터페이스 분리 원칙 정리

NULL 2021-10-19

이번에는 인터페이스 분리 원칙 을 정리해 보겠다.

 

이 원칙은 지나치게 많은 추상 메서드를 가진 거대한 인터페이스 하나를, 관련된 추상 메서드들만 모여있도록 작은 크기의 인터페이스로 분리하라는 뜻이다.

이렇게 해야 하는 이유는 지나치게 큰 인터페이스는 그걸 상속하는 클래스가 자신에게 필요하지도 않은 메서드를 굳이 오버라이딩하도록 만들기 때문이다.

 

인터페이스가 서로 관련성이 높은, 적절한 개수의 추상 메서드들을 포함하게 될 때 그걸 역할 인터페이스(Role Interface) 라고 한다.

큰 인터페이스 하나가 있는 것보다는 작은 역할 인터페이스 여러 개가 있으면 각 클래스가 본인에 해당하는 인터페이스만 적절히 상속받게 된다.

그럼 각 클래스가 어떤 기능을 갖는지 더 세밀하게 파악할 수 있게 해준다는 장점이 있다.

 

인터페이스를 분리할 때 어떤 기준으로 나눌지는 상황에 따라 당연히 다르다. 하지만 중요한 건 관련있는 기능끼리 한 인터페이스에 모으고 한 인터페이스가 지나치게 커지지 않도록 하겠다는 생각을 갖고 인터페이스를 설계하는 것이다.

 

나의 정리


인터페이스 : 추상 클래스

추상 메서드 를 너무 많이 가진 추상 클래스를 만들지 말라.

 

분리하여 역할 인터페이스를 관련있는 기능끼리 묶어서 사용해라.

0 0