Notice
Recent Posts
Recent Comments
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

DeFacto-Standard IT

캡슐화에서 인터페이스와 추상클래스의 결정 본문

Design Pattern/References

캡슐화에서 인터페이스와 추상클래스의 결정

defacto standard 2017. 10. 28. 19:14

인터페이스를 사용하는 경우

 - 관련되지 않은 클래스에 일반적인 기능을 제공하는데 적합

 - 만들고 있는 기능이 광범위한 분산 개체에서 유용하게 사용될 것으로 예상되는 경우

 - 작고 간결한 기능을 디자인 하는 경우


추상클래스를 사용하는 경우

 - 밀접하게 관련된 개체에 사용

 - 여러 버전의 구성요소를 만들 것으로 예상되는 경우

간단하고 쉽게 구성요소의 버전을 작성할 수 있다. 기본 클래스를 업데이트하면 모든 상속 클래스의 변경 내용이 자동으로 업데이트.

(인터페이스의 경우 한번 만들면 변경 불가. 새 버전의 인터페이스가 필요하면 완전히 새롭게 인터페이스를 만들어야 한다.)

 - 큰 기능 단위들을 디자인하는 경우

 - 모든 구성 요소의 구현 사이의 일반적인 구현된 기능을 제공하는 경우.

추상 클래스를 사용하면 부분적으로 자신의 클래스를 구현할 수 있으나, 인터페이스에서는 멤버를 구현하지 않는다.

'Design Pattern > References' 카테고리의 다른 글

관계, UML, 소스코드 예시  (3) 2017.12.10
객체지향 5원칙  (0) 2017.11.11
GoF 디자인 패턴  (0) 2017.10.28
SOLID (5) - 인터페이스 분리 원칙, ISP  (0) 2017.10.28
SOLID (4) - 의존 역전 원칙, DIP  (3) 2017.10.28
Comments