인터페이스

keep_going·2023년 3월 22일

지식저장

목록 보기
4/11

Interface는 객체 지향 프로그래밍에서 자주 사용되는 개념
일종의 추상 클래스로서 메서드와 속성의 선언만 있고 구현이 없음

  • 인터페이스가 사용되는 이유
  1. 다형성 구현
    인터페이스는 객체 간의 다형성 구현에 사용됨
    같은 인터페이스를 구현한 클래스들은 같은 메서드를 사용하므로 동일한 코드를 작성하여 여러 객체에 적용할 수 있음

  2. 코드 재사용
    인터페이스를 사용하면 코드를 재사용할 수 있음
    코드의 일부분을 미리 정의해 두고 나중에 해당 인터페이스를 구현하는 클래스에서 해당 코드를 재사용할 수 있음

  3. 유지보수성 향상
    인터페이스는 객체의 동작 방식을 정의하기 때문에 객체의 구현 방법이 변경되더라도 인터페이스는 변경하지 않아도 되므로 이를 통해 유지보수성이 향상됨

  4. 코드의 결합도 낮추기
    인터페이스를 사용하여 객체 간의 의존성을 줄이면 객체 간의 결합도를 낮출 수 있음
    이를 통해 코드의 유연성이 향상됨

  • 다형성 구현과 코드 재사용의 차이

다형성 구현을 위해서는 상속과 인터페이스를 사용한다.
즉, 같은 타입의 객체를 다른 방식으로 사용할 수 있도록 하는 것
예) 부모 클래스가 하나의 메서드를 정의하고 이를 상속받은 자식 클래스가 각자 다른 방식으로 구현할 수 있도록 하는 것

코드 재사용은 코드의 일부분을 미리 정의해 두고 나중에 해당 코드를 재사용하는 것
코드 재사용을 위해서는 상속, 인터페이스뿐만 아니라 라이브러리, 모듈, 함수 등도 사용됨
예) 여러 곳에서 자주 사용되는 기능을 하나의 함수로 정의하여 필요할 때마다 해당 함수를 호출하여 사용하는 것

다형성 구현과 코드 재사용은 비슷한 개념이지만 다형성 구현은 객체의 동작 방식을 다양하게 구현하고 활용할 수 있도록 하는 것이고, 코드 재사용은 코드의 일부분을 재사용하여 개발 생산성을 높이는 것

profile
keep going

0개의 댓글