인터페이스 (Interface) | 연결 규칙
2024. 12. 5. 20:15ㆍBack-end
1. 일반적인 의미의 "인터페이스"
- 인터페이스는 "두 가지가 만나서 서로 소통하거나 연결될 수 있게 해주는 접점"을 말해.
- 비유하자면:
- TV 리모컨이 TV와 우리 손 사이의 인터페이스야. → 버튼을 눌러 TV를 조작하게 해주니까!
- 자동차의 핸들, 페달, 기어도 운전자와 자동차를 연결해주는 인터페이스야. → 운전자가 차를 제어할 수 있게 해주는 장치들!
- 즉, "인터페이스"란 서로 다른 두 개념(사람-기계, 기계-기계)이 이해할 수 있게 중간 역할을 해주는 것이라고 이해하면 돼.
2. 프로그래밍에서의 "인터페이스"
프로그래밍에서는 "한 컴포넌트(객체, 클래스 등)가 다른 컴포넌트와 어떻게 상호작용할지를 정의한 규칙"을 인터페이스라고 불러.
예시로 이해해보자!
- 너가 커피머신 클래스를 설계한다고 해.
- 이 커피머신을 사용할 다른 개발자에게 "이렇게 쓰세요!"라고 알려줘야겠지?
- brewCoffee() → 커피를 추출하는 메서드.
- addWater(amount) → 물을 추가하는 메서드.
여기서 메서드 목록과 사용법이 바로 인터페이스야! 즉, 어떻게 구현해야 하는지를 정의한 규칙이지.
3. 인터페이스의 종류
프로그래밍에서 인터페이스는 다양한 맥락에서 쓰여:
- API의 인터페이스:
- 클라이언트와 서버가 대화할 때 사용하는 규칙이 API 인터페이스야.
- 예: REST API, GraphQL API 등.
- Java의 Interface:
- 자바에서는 interface라는 키워드로 클래스가 따라야 할 규칙(계약)을 정의해.
- 예를 들어 아래와 같이 정의하면, 어떤 클래스든 CoffeeMaker 인터페이스를 구현할 때 이 메서드들을 반드시 만들어야 해!
public interface CoffeeMaker {
void brewCoffee();
void addWater(int amount);
}
3. GUI 인터페이스: 버튼, 텍스트박스, 메뉴 등 사용자와 컴퓨터가 상호작용하는 화면 요소들.
요약!
- 일반적으로: 인터페이스는 두 개념을 연결해주는 접점이야.
예) 리모컨은 사람과 TV의 인터페이스. - 프로그래밍에서: 인터페이스는 상호작용의 규칙을 말해.
예) 클래스 간의 규칙, 서버-클라이언트 간의 규칙(API).
인터페이스를 "연결 규칙"이나 "대화 약속"이라고 이해하면, 앞으로 이 단어가 더 친숙해질 거야!