내일배움캠프 29일차 TIL : 인터페이스

김정환·2024년 10월 24일
0

키워드

  • 인터페이스를 쓰는 이유

강의를 들으면서 인터페이스에 대한 내용을 정리해보았다.

인터페이스

코딩에서 어떤 기능의 구현이나 사용에는 모두 이유가 필요하다.
인터페이스를 쓰기 위해서도 당연히 이유가 필요하다.

인터페이스는 공통적인 동작을 정의하고
이러한 동작들을 구현하는 클래스들은 해당 인터페이스를 구현하도록 공통 규약(강제)을 설정할 수 있다.

이 문장에서 인터페이스를 쓰기 위한 전제가 있다.
서로 다른 클래스에 공통적인 동작이 있는 경우 인터페이스를 쓸 수 있다.

반대로 말하면 공통적인 동작이 없는데 인터페이스부터 구현한다면 올바르지 못한 사용이란 의미다.

  • ex) '나중에 쓸지도 모르니까 일단 구현해두자'

인터페이스를 사용하는 이유

객체지향 프로그래밍에서 코드는 결합도가 낮아야한다.

결합도가 높다는 의미는 클래스 간 의존도가 높다는 의미이다.
의존도가 높은 코드는 클래스를 수정했을 때 의존하고 있는 다른 클래스를 수정할 가능성이 높다.

결합도를 낮추기 위해서는 응집도를 높여야한다.
코드 내의 기능들이 그 안에서 수행되고 끝날 수 있도록 한다는 의미이다.

인터페이스는 이러한 측면에서 유용하다.

  • 여러 공통점이 있는 클래스에서 구체적인 클래스를 받아 사용하기 보다
    상속받은 인터페이스를 받아 사용하는 것이 더 유연하다.
  • 기능별로 쪼개어 상속받는다면 유연성을 높이기 쉬워진다.

#내일배움캠프 #스파르타내일배움캠프 #스파르타내일배움캠프TIL

profile
사파 개발자

0개의 댓글