{{위키데이터 속성 추적}}
[[파일:Reactable Multitouch.jpg|섬네일|[[실감형 사용자 인터페이스]]의 예.]]
'''사용자 인터페이스''' 또는 '''유저 인터페이스'''({{llang|en|user interface}}, '''{{lang|en|UI}}''')는 사람([[사용자 (컴퓨팅)|사용자]])과 사물 또는 시스템, [[기계]], [[컴퓨터 프로그램]] 등 사이에서 의사소통을 할 수 있도록 일시적 또는 영구적인 접근을 목적으로 만들어진 물리적, 가상적 매개체를 뜻한다. 사용자 인터페이스는 사람들이 컴퓨터와 상호 작용하는 시스템이다. 사용자 인터페이스는 물리적인 하드웨어와 논리적인 소프트웨어 요소를 포함한다. 사용자 인터페이스는 크게 다음과 같은 수단을 사용한다.
* [[입력]]: 사용자가 시스템을 조작할 수 있게 한다.
* [[출력]]: 시스템이 사용자가 이용한 것에 대한 결과를 표시한다.
* [[삭제]]: 시스템이 사용자가 잘못한것을 삭제한다.

사용자 인터페이스를 판단하는 기준으로 [[사용성]]이 있다. 좋은 사용자 인터페이스는 [[심리학]]과 [[생리학]]에 기반하여, 사용자가 필요한 요소를 쉽게 찾고 사용하며 그 요소로부터 명확하게 의도한 결과를 쉽게 얻어 낼 수 있어야 한다.

== 역사 ==
사용자 인터페이스의 역사는 어떠한 종류의 사용자 인터페이스가 지배적인지에 따라서 다음과 같은 단계로 구분할 수 있다.
=== 1945~1968년: 배치 인터페이스 ===
배치(batch) 시대에 컴퓨팅 전력은 매우 희소했고 비쌌다. 사용자 인터페이스들은 초보적인 수준이었다. 사용자들은 컴퓨터들에 순응하는 것 외에는 다른 방도가 없었다. 즉, 사용자 인터페이스들은 간접적인 비용으로 간주되었고 소프트웨어는 프로세서가 가능한 부하를 줄이면서 최대한 이용할 수 있도록 설계되었다.
=== 1969년~현재: 명령 줄 사용자 인터페이스 ===
{{본문|명령 줄 인터페이스}}
=== 1985년: SAA 사용자 인터페이스 / 텍스트 기반 사용자 인터페이스 ===
1985년, [[마이크로소프트 윈도우]]와 기타 [[그래픽 사용자 인터페이스]]의 시작과 함께 IBM은 이른바 [[IBM 시스템 애플리케이션 아키텍처|시스템 애플리케이션 아키텍처]](SAA) 표준을 만들었으며 여기에는 [[IBM 공통 사용자 접근]](CUA) 파생물이 포함되어 있다. CUA는 사람들이 윈도우에서 인지하며 사용하고 있는 것을 만들어냈으며, 근대의 도스 및 윈도우 콘솔 애플리케이션들 또한 이 표준을 사용하게 된다.
=== 1968년~ 현재: 그래픽 사용자 인터페이스 ===
* 1968년: [[더글러스 엥겔바트]]가 마우스, 포인터, 하이퍼텍스트, 다중 창을 사용하는 [[NLS (컴퓨터 시스템)|NLS]]를 시연하였다.<ref name="harding">{{저널 인용|last1=McCown|first1=Frank|title=History of the Graphical User Interface (GUI)|url=https://www.harding.edu/fmccown/gui/history-gui.pptx|publisher=Harding University}}</ref>
* 1970년: [[PARC|제록스 팰로앨토 연구 센터]]의 연구원들(다수가 [[SRI 인터내셔널|SRI]] 출신)이 [[WIMP]] 패러다임을 개발한다. (창, 아이콘, 메뉴, 포인터)<ref name="harding"/>

== 컴퓨터의 사용자 인터페이스 ==
[[파일:XFCE-4.10-Desktop.png|섬네일|right|[[그래픽 사용자 인터페이스]]와 [[데스크톱 메타포]].]]
[[컴퓨터 과학]]과 [[인간과 컴퓨터 상호 작용]](HCI)에서 사용자 인터페이스는 프로그램이 사용자에게 보여 주는 화상·문자·소리 정보와 프로그램을 조작하기 위한 수단(이를테면 [[컴퓨터 자판]]의 글쇠 입력이나 [[마우스]]의 움직임)을 일컫는다.

=== 종류 ===
일상적인 사용자 인터페이스는 다음과 같다.
* '''[[그래픽 사용자 인터페이스]]'''(GUI): 체계의 요소에 해당하는 그래픽과 텍스트로 이루어져 있다. 여기에는 적어도 두 개의 서로 다른 정책, 곧 [[객체지향 프로그래밍|객체지향]] 인터페이스와 [[응용 프로그램]] 지향 인터페이스가 공존하고 있다.
* '''[[웹 인터페이스|웹 기반 인터페이스]]'''(웹 사용자 인터페이스, WUI): [[인터넷]]과 [[웹 브라우저]]를 통해 웹 페이지를 열람하고 조작하는 인터페이스이다.
[[데스크톱 컴퓨터|데스크톱 컴퓨팅]] 이외의 다양한 분야에 쓰이는 사용자 인터페이스는 다음과 같다.
* '''[[명령 줄 인터페이스]]'''(CLI): 사용자가 [[컴퓨터 자판]] 등을 이용해 명령 [[문자열]]을 입력하여 체계를 조작하는 인터페이스이다.
* 체감각 인터페이스
* 터치 사용자 인터페이스
기타 사용자 인터페이스는 다음과 같다.
* 집중 사용자 인터페이스(Attentive user interface)
* 일괄 인터페이스
* 대화형 인터페이스 에이전트
* 교차 기반 인터페이스 (Crossing-based interface)
* 제스처 인터페이스
* 인텔리전트 사용자 인터페이스
* 움직임 추적 인터페이스
* 멀티 스크린 인터페이스
* 비명령 사용자 인터페이스
* 객체 지향 사용자 인터페이스
* 반사적인 사용자 인터페이스(Reflexive user interface)
* 텐저블 사용자 인터페이스(Tangible user interfaces)
* 작업 집중 인터페이스(Task-Focused Interface)
* '''[[텍스트 사용자 인터페이스]]'''(TUI): 문자열 기반 사용자 인터페이스와 구분하기 위해 그래픽 사용자 인터페이스가 발명된 뒤에 만들어진 용어이다.
* 음성 사용자 인터페이스
* 자연어 인터페이스
* 무입력 인터페이스
* 주밍 사용자 인터페이스(Zooming user interface)
* 최종 사용자 인터페이스: 온라인 디스플레이나 데이터 입력 화면, 보고서, 웹 페이지 등 사용자와 상호작용 하는 부분을 말한다.<ref>{{서적 인용
  | 성 = Laudon
  | 이름 = Kenneth C, Jane z
  | 제목 = Management Information Systems 12/E: Managing the Digital Firm P. 532
  | 출판사 = Pearson Education Asia
  | 연도 = 
  | doi =  
  | id = ISBN-10 : 027375453X / ISBN-13 : 9780273754534
}}</ref>

== UI 설계 원칙 ==
* 직관성(Intuitiveness) : 컨트롤, 뷰 부분을 나누어 처음 사용할 시에도 사용방법을 쉽게 알 수 있다
* 일관성(Consistency) : 그것이 여러 부분에 걸쳐 일관적이라면 학습하기가 용이하다.
* 효율성(Effectiveness) : 익숙해진 다음에 더 효율적으로 사용할 수 있다면 가장 좋다.

== 같이 보기 ==
* [[그래픽 사용자 인터페이스]]
* [[접근성]]과 [[컴퓨터 접근성]]
* [[사물 인터넷]]
* [[사용자 경험 디자인]]
* [[사용자 인터페이스 디자인]]
* [[버추얼 아티팩트]]

== 각주 ==
{{각주}}

== 외부 링크 ==
{{위키공용분류}}
* {{언어링크|en}} [https://web.archive.org/web/20070816122639/http://www.interaction-design.org/references/conferences/ Its bibliography] covers a wide area of user interface publications
* {{언어링크|en}} [http://www.catb.org/~esr/writings/taouu/html/ch02.html Chapter 2. History: A brief History of user interfaces]

{{사용자 인터페이스}}
{{컴퓨터 과학}}
{{전거 통제}}

[[분류:사용자 인터페이스| ]]
[[분류:가상 현실]]