위키득계정 ↗
기술

인터페이스 (컴퓨팅)

인터페이스 (컴퓨팅)기술
영문명
Interface
핵심 역할
상호작용 방법 정의
주요 형태
사용자, 소프트웨어와 하드웨어 인터페이스
관련 개념
프로토콜과 추상화
컴퓨팅에서 인터페이스는 사람이나 소프트웨어, 하드웨어가 서로 상호작용하는 경계와 그 약속이다. 화면의 조작 요소뿐 아니라 함수의 호출 방식, 장치의 연결 규칙처럼 다양한 수준에서 쓰이는 개념이다.

화면만을 뜻하지 않는다

검색 창과 버튼은 사람이 프로그램에 의사를 전달하는 접점이다. 한 프로그램이 다른 프로그램의 함수를 부르는 방법이나 컴퓨터가 주변 장치와 신호를 주고받는 규칙도 인터페이스에 해당한다. 어느 두 대상 사이의 경계인지 먼저 구분하면 의미가 명확해진다.

약속에 포함되는 것

소프트웨어의 인터페이스는 연산의 이름과 입력값, 반환값뿐 아니라 오류와 상태 변화에 대한 약속을 포함할 수 있다. 입력 형식만 맞더라도 호출 순서나 권한 같은 전제가 충족되지 않으면 올바르게 사용할 수 없는 경우가 있다.

바깥과 안쪽을 나누기

같은 인터페이스를 유지하면서 내부의 저장 방법이나 처리 알고리즘을 바꿀 수 있다. 이 경계가 안정적이면 사용하는 쪽의 변경 범위를 줄일 수 있다. 다만 성능이나 오류 처리처럼 바깥에서 관측 가능한 성질이 달라지면 영향이 남을 수 있다.

호환성을 판단하기

물리적인 단자 모양이 같다는 사실만으로 모든 기능과 속도가 같지는 않다. 소프트웨어에서도 이름이 같은 연산이 반드시 같은 의미를 갖지는 않는다. 형식과 동작, 버전 및 제약을 함께 확인해야 실제로 연결 가능한지 판단할 수 있다.

관련 문서

API / 추상화 (컴퓨터 과학) / 컴퓨터 하드웨어 / 소프트웨어