
Interfejs to punkt styku między dwoma, niezbędnymi składowymi działania: urządzeniami-programami lub człowiekiem-urządzeniem. Umożliwia wymianę informacji lub sygnałów. Nie należy traktować go jako pojedynczego elementu. Interfejs to kompletny zestaw zasad, złączy, protokołów i mechanizmów, które pozwalają na sprawną komunikację. Bez interfejsu nawet najbardziej sprawne urządzenia czy aplikacje nie mogłyby ze sobą współpracować.
Pierwszym przykładem jest interfejs na płaszczyźnie sprzętowej, np. porty USB, HDMI czy Ethernet. W takim kontekście, obejmuje on zarówno fizyczne aspekty, jak i standard przesyłu danych. Interfejs określa napięcia, sposób kodowania sygnału, prędkość transmisji oraz strukturę pakietów danych. Takim sposobem, dwa urządzenia różnych producentów mogą działać razem - obsługują jednolity standard. Interfejs może zaistnieć także w środowisku programowym. Oznacza wtedy zestaw reguł i funkcji, które umożliwiają komunikację między aplikacjami lub programem, a systemem operacyjnym. Dobrym przykładem jest API - Application Programming Interface, który definiuje przesył danych na poziomie komenda - odpowiedź. Programista nie musi znać wewnętrznej budowy drugiego systemu. Wystarczy, że korzysta z udostępnionego interfejsu zgodnie z dokumentacją.
Szczególnym rodzajem interfejsu jest ten użytkownika (UI). Inaczej mówiąc jest to sposób, w jaki człowiek komunikuje się z urządzeniem lub aplikacją. Obejmuje elementy graficzne, przyciski, menu, komunikację oraz logikę nawigacji. W tym wypadku, interfejs przekształca złożone operacje techniczne w zrozumiałe dla użytkownika działania. Dobrze zaprojektowany interfejs nie zmieni funkcji systemu, a ułatwi jego obsługę. Z technicznego punktu widzenia interfejs definiuje reguły interpretacji. Może obejmować warstwę fizyczną, logiczną oraz semantyczną. W modelach komunikacyjnych, interfejsy występują na wielu poziomach - od sygnału po aplikację.
Warto wiedzieć, że nie jest to to samo co system. Interfejs nie realizuje pełni funkcji urządzeń i programów. Jest mechanizmem umożliwiającym dostęp do pełnego spektrum jego możliwości. Stanowi łącznik między zawartością systemu a jego otoczeniem. Dodatkowo - interfejs to nie ekran czy wygląd aplikacji. To struktura komunikacyjna.