He de reconocer que no soy bueno para crear una UI lo bastante bonita y talvez funcional como yo quisiera, por tal motivo últimamente he buscado (no lo suficiente) recursos sobre diseño de IU, cabe mencionar que este post salió debido a la observación que vi en la IU de Mac y mi experiencia que tengo con Windows, muchos programadores sabemos que últimamente la IU (Interfaz de Usuario) es algo relevante para que nuestras aplicaciones cautiven, sean funcionales y sobre todo usables para los usuarios de nuestra aplicación, pero regresando al tema de la observación de la UI de Mac, me pregunte por que no hay MDI (Interfaz de múltiples documentos), en lo personal he usado este tipo de diseño en Windows y he visto muchas aplicaciones que así están creadas, ¿Como es que sobreviven sin MDI?.
Bien, vayamos explicando los tipos de UI que son mas usados actualmente o que en lo personal he visto mas y sobre todo mi opinión sobre cada uno de estos y el uso correcto o incorrecto que le he[mos] dado
MDI (Interfaz de múltiples documentos):
Como su nombre lo indica este tipo interfaz fue diseñado para tener múltiples documentos(ventanas hijas) agrupados por una ventana padre, la razón por la cual este tipo de interfaz fue creada es para no mantener múltiples instancias de una aplicación y una ventana padre pudiera tener el control de las ventanas hijas pues estas tendrían un comportamiento similar, y un ejemplo real de esto es Microsoft Word, el cual es una aplicación MDI y cada documento es una ventana Hija, es cierto que Microsoft ha cambiado sus UI de office en versiones nuevas, pero para este tipo de aplicaciones me parece usable, pero… ¿Que pasa con las aplicaciones las cuales cada ventana tiene una funcionalidad diferente y en la mayoria de las ocasiones estas no interactuan ni comparten datos entre si y en los peores casos no hay un “menú” o similar para poder localizar una ventana de entre todas? Preguntese usted si ¿Usar MDI para su aplicación es la mejor opción?
SDI (Interfaz de documento único):
Este tipo de interfaz suele usarse en Windows para aplicaciones que no maneja múltiples ventanas y las cuales solo tienen una funciona única, es cierto que puede ser un poco engorroso usar este tipo de aplicaciones para multiples ventanas, pero también puede ser su solución, un ejemplo de ello es la aplicación de
GIMP.
TDI (Interfaz de documentos en pestañas):
Este tipo de interfaz ha sido muy popularizado por los navegadores web, en especial por Opera y Firerox aunque estos no hayan sido los pioneros en este tipo de interfaces de usuario, las ventajas de este tipo de interfaz a diferencia del MDI es que se mantiene consistente las ventanas al estar acopladas por las pestañas.
WorkPanels:
No encontré otro nombre que ponerle, pero con este tipo de interfaz me refiero al que es usado en Outlook, el cual consiste en tener un menú principal e ir cargando un panel con los controles de usuario de cada modulo en un workspace principal, este tipo de interfaz puede ser usable a aquellas aplicaciones MDI el cual cada ventana es una funcionalidad independiente y no interactuan entre si.
Estos no son todas los tipos de interfaces que existen, tambien podemos ver aplicaciones “híbridas” como Visual Studio el cual hace uso de TDI y paneles desacoplables. Usted debe eligir el tipo de interfaz que sea mas adecuada al tipo de aplicación que este desarrollando, recuerde que siempre hay alguna razón por la cual se creo un diseño para una aplicación y tal vez esta no sea la mas apropiada para la suya y no dejarnos llevar por la moda de alguna UI que veamos bonita
Les dejo unas ligas de interes respecto al tema, espero sus comentarios y/o quejas
Design Specifications and Guidelines – Window Management
MDI
SDI
TDI