# Interfaz gráfica de usuario

La interfaz gráfica de usuario, conocida también como GUI (del inglés graphical user interface), es un programa informático que actúa de interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para representar la información y acciones disponibles en la interfaz. Su principal uso consiste en proporcionar un entorno visual sencillo para permitir la comunicación con el sistema operativo de una máquina o computador.
Habitualmente las acciones se realizan mediante manipulación directa, para facilitar la interacción del usuario con la computadora. Surge como evolución de las interfaces de línea de comandos que se usaban para operar los primeros sistemas operativos y es pieza fundamental en un entorno gráfico. Como ejemplos de interfaz gráfica de usuario, cabe citar los entornos de escritorio Windows, el de GNU/Linux o el de Mac OS X, Aqua.
En el contexto del proceso de interacción persona-computadora, la interfaz gráfica de usuario es el artefacto tecnológico de un sistema interactivo que posibilita, a través del uso y la representación del lenguaje visual, una interacción amigable con un sistema informático.

## Diseño de la interfaz de usuario y de interacción

Diseñar la composición visual y el comportamiento temporal de una GUI es una parte importante de la programación de aplicaciones en el campo de la Interacción persona-ordenador. Su objetivo es mejorar la eficiencia y la facilidad de uso del diseño lógico subyacente de un programa almacenado, una disciplina de diseño llamada usabilidad. Varios métodos de diseño centrado en el usuario se utilizan para garantizar que el lenguaje visual introducido en el diseño se adapta bien a las tareas.
Las características visibles de la interfaz gráfica de una aplicación a veces se llaman cromo o GUI. Normalmente, los usuarios interactúan con la información mediante la manipulación visual de widgets que permitan interacciones adecuadas al tipo de datos que tienen. Los widgets de una interfaz bien diseñada se seleccionan para apoyar las acciones necesarias para alcanzar los objetivos de los usuarios. Un Modelo-Vista-Controlador permite estructuras flexibles en las que la interfaz es independiente e indirectamente vinculada a las funciones de la aplicación, de modo que la GUI puede personalizarse fácilmente. Esto permite a los usuarios seleccionar o diseñar otros skins a voluntad y facilita el trabajo del diseñador para cambiar la interfaz a medida que evolucionan las necesidades del usuario. Un buen diseño de la interfaz de usuario se relaciona más con los usuarios y menos con la arquitectura del sistema. Los widgets grandes, como las ventanas, normalmente proporcionan un marco o contenedor para el contenido principal de la presentación, como una página web, un mensaje de correo electrónico o un dibujo. Los más pequeños suelen actuar como una herramienta de entrada del usuario.
Se puede diseñar una GUI para los requisitos de un mercado vertical como interfaces gráficas de usuario específicas de la aplicación. Algunos ejemplos incluyen cajeros automáticos (ATM), pantallas de puntos de venta (POS) en restaurantes, sistemas de autopago utilizados en tiendas minoristas, para billetes de avión y facturación automática, quioscos de información en un espacio público, como una estación de tren o un museo, y monitores o pantallas de control en una aplicación industrial incrustada que utilizan un sistema operativo de tiempo real (RTOS).
Los teléfonos móviles y los sistemas de videojuegos portátiles también utilizan el GUI de pantalla táctil específicas de aplicaciones. Los automóviles más novedosos utilizan el GUI en sus sistemas de navegación y centros multimedia, o combinaciones de centros multimedia de navegación.

## Historia
### Precursores

Los investigadores del Stanford Research Institute liderados por Douglas Engelbart, desarrollaron una interfaz de hipervínculos en modo texto gobernada por un ratón, que también inventaron. Este concepto fue ampliado y trasladado al entorno gráfico por los investigadores del Xerox PARC en la ciudad estadounidense de Palo Alto. El entorno se denominó PARC User Interface y en él se definieron los conceptos de ventanas, casilla de verificación, botones de radio, menús y puntero del ratón. La interfaz fue implementada comercialmente en el computador Xerox Star 8010.

### Xerox Alto

El Xerox Alto, desarrollado en el Xerox PARC en 1973, fue una de las primeras computadoras personales, así como el primero que utilizó la metáfora de escritorio y una interfaz gráfica de usuario.

### Xerox Star 8010

La estación de trabajo Xerox Star, conocida oficialmente como el 8010 Star Information System (Sistema de Información Estrella 8010) fue introducida por Xerox Corporation en 1981. Fue el primer sistema comercial en incorporar varias tecnologías que han llegado a ser hoy en día corrientes en computadores personales, incluyendo la pantalla con bitmaps en lugar de solo texto, una interfaz gráfica de usuario basada en ventanas, iconos, carpetas, ratón, red Ethernet, servidores de archivos, servidores de impresoras y correo electrónico.

### Apple Lisa, Macintosh, Apple II GS.

Tras una visita al Xerox PARC en 1979, el equipo de Apple encabezado por Jef Raskin se concentra en diseñar un entorno gráfico para su nueva generación de 16 bits, que se verá plasmado en el Apple Lisa en 1983. Ese sistema gráfico es portado al sucesor del Apple II, el Apple II GS. Un segundo equipo trabaja en el Apple Macintosh que verá la luz en 1984 con una versión mejorada del entorno gráfico del Lisa ("pretendimos hacer una computadora tan simple de manejar como una tostadora"). Desde ese momento el Mac reinará como paradigma de usabilidad de un entorno gráfico; pese a que por debajo el sistema operativo sufra cambios radicales, los usuarios no avanzados no son conscientes de ello y no sufren los problemas de otras plataformas.

### Workbench

Workbench es el nombre dado por Commodore a la interfaz gráfica del AmigaOS, el sistema operativo del Commodore Amiga lanzado en 1985. A diferencia de los sistemas más populares (GEM, Mac OS, MS Windows...) es un verdadero entorno multitarea solo rivalizado por la interfaz X Window System de los diferentes sabores de Unix. La frase más repetida por un amiguero es: «para masacrar marcianos, formatear un disquete y enviar o recibir un Fax todo a la vez y sin colgarse, necesitas un 386 con disco duro, 16 MB de RAM y OS/2; un Amiga 500 con disquete y solo su memoria base (512 KB de RAM y 512 KB de ROM) es capaz de todo eso». Aunque muy popular por los espectaculares (para entonces) gráficos de la máquina y su gran plantel de videojuegos, será la negligencia de sus sucesivos propietarios la principal causa de que acabe restringido a solamente la plataforma Amiga.

### GEOS

Para el Commodore 64 y su sucesor el Commodore 128 se desarrolló el entorno gráfico GEOS en 1986. Este entorno se portó al IBM PC, fue utilizado en varias PDA y Nokia lo usó como base de su actual sistema operativo.

### GEM

GEM (Graphical Environment Manager) es un GUI diseñado por Digital Research en 1985 para ejecutarse sobre varios sistemas operativos de línea de comandos del IBM PC y compatibles: funciona tanto sobre IBM DOS /MS-DOS como sobre CP/M 86. Su máxima popularidad en el PC llega de la mano del Amstrad PC1512 y del Amstrad PC1640, los clónicos que rompieron en Europa la barrera del precio popularizando el PC, hasta ese momento relegado mayoritariamente a oficinas. Aunque se incorpora en su primera generación de portátiles y en el Sinclair PC200, será sustituido en la siguiente generación de PCs Amstrad por Microsoft Windows 2.xx. En el PC vivirá una segunda juventud al venir de serie con DR-DOS como TaskMax.
Pero será en los Atari ST y sucesores donde se convertirá en el entorno gráfico oficial de la plataforma, alcanzando gran popularidad, tanto por ser en principio una alternativa barata al MAC en autoedición, como por hacerse con el nicho de mercado de la música profesional.

### Apple y Microsoft

En 1982, Apple había comenzado como una microempresa formada por dos empleados, Steve Jobs y Steve Wozniak, y había crecido hasta convertirse en una empresa de 300 millones de dólares. En 1983, ya se había convertido en una empresa de 1000 millones de dólares, el mismo valor que IBM.
En 1985, Microsoft saca al mercado Windows 1.0, entorno gráfico para computadoras PC IBM compatibles, con muchos parecidos al Mac OS. La respuesta de Apple a la introducción del sistema operativo Windows fue la interposición de una demanda de varios miles de millones de dólares contra Microsoft, por violación de copyright.
En 1987 IBM se vio obligada a entrar en el mercado de las computadoras personales con entorno gráfico con su modelo IBM Personal System/2 (PS/2), aliándose con Bill Gates (Microsoft), que había desarrollado el OS/2. La interfaz gráfica de este sistema operativo era muy similar a la de Apple. El OS/2 no se convirtió en el nuevo estándar del sector, debido fundamentalmente al conflicto de intereses entre IBM y Microsoft.
La aparición de computadoras IBM clónicas hizo que el sistema Windows se popularizara, lo que restó mercado a Apple. Esta se recuperó a finales de 1990 lanzando nuevos productos.
Una señal inequívoca del éxito de Apple fue la aparición de productos similares: una pequeña compañía llamada Nutek Computers Inc., anunció que estaba desarrollando una computadora compatible con el Macintosh.
En 1991, John Sculley, director de Apple, reveló que la compañía estaba considerando competir contra Microsoft en el campo del software vendiendo su sistema operativo a terceros. Apple reveló que estaba manteniendo conversaciones con su antiguo rival, IBM, destinadas a compartir tecnologías. Decidieron crear una joint venture para desarrollar un sistema operativo avanzado que ambas utilizarían en sus nuevas máquinas y licenciarían a terceros. Este plan presentaba un desafío directo a Microsoft.
Microsoft consigue convertir a Windows en el sistema operativo más utilizado en el mundo, dejando a Apple en un segundo lugar.

## Tipos de interfaces gráficas de usuario
### Las GUI y ZUI

Los tipos de interfaces gráficas de usuarios (GUI) que se encuentran en juegos de computadora, y las GUI avanzados basados en realidad virtual, se usan con frecuencia en tareas de investigación. Muchos grupos de investigación en Norteamérica y Europa están trabajando actualmente en la interfaz de enfoque del usuario o ZUI (Zooming User Interface), que es un adelanto lógico de las GUI, mezclando 3D con 2D. Podría expresarse como «2 dimensiones y media en objetos vectoriales de una dimensión».

### Interfaz de usuario de pantalla táctil

Algunas GUI son diseñadas para cumplir con los rigurosos requisitos de los mercados verticales. Estos se conocen como las GUI de uso específico. Un ejemplo de un GUI de uso específico es la ahora familiar pantalla táctil o touchscreen (pantalla que al ser tocada efectúa los comandos del ratón en el software). Se encuentra actualmente implementado en muchos restaurantes y en muchas tiendas de autoservicio de todo el mundo. Fue iniciado por Gene Mosher en la computadora del ST de Atari en 1986, el uso que él específicó en las GUI de pantalla táctil ha encabezado una revolución mundial e innovadora en el uso de las computadoras a través de las industrias alimenticias y de bebidas, y en ventas al por menor.
Otros ejemplos de GUI de uso específico, relacionados con la pantalla táctil son los cajeros automáticos, los kioscos de información y las pantallas de monitoreo y control en los usos industriales, que emplean un sistema operativo de tiempo real (RTOS). Los teléfonos móviles y los sistemas o consolas de juego también emplean las pantallas táctiles. Además la domótica no es posible sin una buena interfaz de usuario, o GUI.

### Interfaz Natural de Usuario (NUI)

Las NUI naturales son aquellas en las que se interactúa con un sistema, aplicación, etcétera, sin utilizar dispositivos de entrada como ratón, teclado, lápiz óptico, etc. En lugar de estos se utilizan las manos o las yemas de los dedos.

### Interfaz de Voz (VUI)

Se trata de programas capaces de identificar e interpretar el habla. El ejemplo más claro que tenemos es el reciente auge de las inteligencias artificiales, como Siri, que se controlan por medio de la voz.

### Interfaz de texto (TUI)

Se utiliza principalmente en el ámbito de la programación de sistemas operativos y es la evolución de la interfaz de línea de comando primitiva que usaban los primeros programas de computadora.

### Interfaz cerebro-ordenador

O también llamada tecnología BCI (Brain-Computer Interface). Es el tipo de interfaz más innovadora que existe hasta el momento, y aunque aún no cuenta con muchas aplicaciones cotidianas, se está utilizando para controlar prótesis biónicas y dar instrucciones sencillas a un software por medio de las ondas cerebrales.

## Idioma

Es habitual poder cambiar el idioma de la interfaz de usuario.

## Interfaz gráfica de usuario tridimensional

Muchos entornos y juegos utilizan los métodos de los gráficos 3D para proyectar objetos en 3D de la interfaz gráfica de usuario en la pantalla. El uso de gráficos 3D se ha vuelto cada vez más común en los principales sistemas operativos (por ejemplo, Windows Aero, y Aqua (MacOS)) para crear interfaces atractivas, denominadas eye candy, o con fines funcionales que sólo son posibles utilizando las tres dimensiones. Por ejemplo, el cambio de usuario se representa girando un cubo con caras que representan el espacio de trabajo de cada usuario, y la gestión de ventanas se representa mediante un mecanismo de volteo al estilo de Rolodex en Windows Vista (véase Windows Flip 3D). En ambos casos, el sistema operativo transforma las ventanas sobre la marcha mientras sigue actualizando el contenido de las mismas.
La interfaz de usuario con zoom (Zooming user interface en inglés, ZUI) es una tecnología relacionada que promete ofrecer las ventajas de representación de los entornos 3D sin sus inconvenientes de usabilidad de problemas de orientación y objetos ocultos. En 2006, Hillcrest Labs presentó la primera ZUI para televisión. Otras innovaciones incluyen el Proyecto Looking Glass de Sun, Metisse, que era similar al Proyecto Looking Glass, BumpTop, en el que los usuarios pueden manipular documentos y ventanas con movimiento realista y física como si fueran documentos físicos, Croquet OS, que está construido para la colaboración, y compositing window managers como Enlightenment y Compiz. La realidad aumentada y la realidad virtual también hacen uso de elementos de interfaz gráfica de usuario en 3D.