2007/07/06

SDI, MDI y la madre que los parió

SDI (interfaz de documento único) y MDI (interfaz de múltiples documentos) son 2 formas de organizar el aspecto de un programa que normalmente determinan como va a trabajar el usuario final con él. A continuación pongo una lista no exhaustiva de lo que me he ido encontrando en mis "viajes informáticos":

  1. Windows SDI: Windows Explorer (el navegador de archivos no el de internet)

    Hay una instancia de la aplicación abierta para cada objeto (vista de carpeta en explorer). Cada instancia de ventana del explorer aparece individualmente en la barra de tareas y en la lista de tareas al hacer alt+tab y cualquiera de estos 2 métodos sólo primerplanea la instancia a la que representa.

  2. Windows MDI: Word 7

    Sólo hay una instancia de la aplicación abierta que aparece como tal en la barra de tareas y en la lista de alt+tab conteniendo todos los objetos (documentos word en este caso) abiertos por la aplicación. Al primerplanear la aplicación por cualquier método, todos los objetos contenidos se primerplanean.

  3. Windows Hibrido: Excel 2003

    Es más SDI que MDI: hay una ventana de la aplicación para cada objeto (documento de excel), y al primerplanear sólo obtienes el objeto en cuestión. Pero la primera instancia abierta recibe un tratamiento especial según el contexto. Ver este wtf, que ha sido el principal motivador de este artículo.

  4. OSX MDI: Finder

    Sólo hay una instancia de la aplicación abierta que aparece en el dock y en la lista de tareas fruta+tab, conteniendo todos los objetos (vistas de carpetas en finder) abiertos por la aplicación. Al primerplanear de cualqueira de estas 2 maneras, todos los objetos de la aplicación se primerplanean. Pero usando exposé puedes primerplanear objetos individuales.

  5. OSX SDI: gVim

    Sí, sé que gVim no es una aplicación nativa, pero es la única que me he encontrado que trabaja puramente SDI y no necesita X11. Cada instancia de la aplicación que aparece en el dock o en la lista de fruta+tab representa un objeto (documento de texto). Primerplanear sólo actua sobre ese objeto.

  6. GNU/Linux.

    Principalmente no he usado ningun GNU/Linux tanto como para fijarme en el comportamiento de las ventanas (aunque GNOME y KDE tienen un comportamiento básico bastante similar al de windows). Y en última instancia (y tirando de tópicos, no me mateis por ello), seguro que hay demasiadas variantes como para enumerarlas por aquí.

Otras variantes:

  1. GIMP. Cada ventana de la aplicación obtiene una entrada en la lista de tareas de alt+tab y de la barra de tareas (x ventanas de herramientas obtienen x iconos en la brara de tareas, y además cada objeto abierto [archivo de imágen] obtiene un icono propio).

  2. X11 en OSX. En el dock y en fruta+tab aparece el icono de X11 y el icono del objeto (aplicacíon X11), pero este último sólo está como figurante: para primerplanar hay que elegir el icono de X11.

  3. Firefox. Cualquier interfaz de pestañas es claramente MDI. En windows/linux además, puedes tener varios iconos en las listas de la barra de tareas y de alt+tab, pero básicamente son pestañas separadas. En OSX por más ventanas que abras sólo hay un icono en el dock y en fruta+tab.

  4. Aplicaciones de instancia única (¿SIA?). iTunes (¿Amarok?). Suelen ser aplicaciones que dependen de una BBDD, por lo que tener varios objetos abiertos no tiene mucho sentido. Unicamente hay una instancia de la aplicación abierta.

  5. Iconos agrupados. Por defecto Windows XP agrupa en un sólo botón de la barra de tareas los iconos de los objetos que pertenecen a la misma aplicación. Al pulsar el botón se despliega una lista con los iconos para elegir el deseado. En la lista de alt+tab no se agrupan. En OSX, pulsando con el botón derecho (ctrl+click, o click prolongado) en el dock aparece una lista similar.

Si conoceis aplicaciones que tengan otros comportamientos, ponedlas en los comentarios.

PD: Sí, "primerplanear" me la he inventado para acortar la expresión "lleva al primer plano". A mi me vale como neologismo.

No hay comentarios:

Publicar un comentario en la entrada

Nota: solo los miembros de este blog pueden publicar comentarios.