user interface - otra - Diseñando una GUI
interfaz grafica matlab ejemplos (12)
¿Has leído http://msdn.microsoft.com/en-us/library/aa511258.aspx ?
O lea el artículo de wikipedia: http://en.wikipedia.org/wiki/Human_interface_guidelines contiene enlaces a algunos HIG
¿Cómo podría usted, como desarrollador con poca (o ninguna) inclinación artística, diseñar una GUI para una aplicación? En particular, estoy pensando en aplicaciones de escritorio, pero cualquier cosa que se relacione con las aplicaciones web también es bienvenida. Me resulta extremadamente difícil diseñar algo que tanto yo como los posibles usuarios consideremos satisfactorio. Puedo buscar esquemas de colores en la red, pero ¿cómo sabría dónde colocar botones / cuadros de texto / etc.?
Actualización: para aclarar, no me refiero a los controles y a su uso. Más bien, ¿hay alguna guía / sugerencia sobre cuándo debo botones, combos, cuadros de texto, etc.? ¿Cuánto tiempo deberían estar y dónde los colocaría en el formulario?
Además de todo lo demás que se ha dicho en esta página, agregaría que cuanto menos notes una GUI, mejor .
Quiero decir, cuando el usuario no percibe la interfaz de usuario, es porque el usuario está haciendo su trabajo. Los usuarios notan la GUI cuando (a) es bella (piense en Apple) o (b) es horrible (piense en cualquier GUI que haya usado que lo haya frustrado).
Je. Lea esto: http://www.codinghorror.com/blog/archives/000734.html
Joel Spolsky tiene muy buenos consejos de diseño de alto nivel:
http://www.joelonsoftware.com/uibook/chapters/fog0000000057.html
Por encima de eso, lo más importante es probar algo, hacer maquetas. Tal vez las iniciales en papel, pero en algún momento simplemente intente armar una GUI sin conectar el código. Vea lo que piensa, intente algunos cambios, pregunte a otras personas sus opiniones y simplemente experimente. La mejor técnica de diseño es obtener retroalimentación de las personas, preferiblemente de la audiencia objetivo si es posible.
Las aplicaciones que desarrollé se hacen clic miles de veces por hora, por lo que todo se reduce a la eficiencia. Me gusta pensar que es una especie de moneda con la que puedes generar muchos axiomas útiles:
Si guarda un clic, +1.
Si cuesta un clic, -1.
Si el usuario pierde tiempo averiguando cómo funciona, -1. (La mayoría de los elementos personalizados de UI)
Si es fundamentalmente intuitivo, +1. (Flujo de corriente)
Si guarda un primer clic a los usuarios nuevos, +1. (Magos)
Si cuesta a los usuarios a largo plazo un clic, -1. (Magos)
(Por lo tanto, debe asegurarse de que sus métodos abreviados de teclado y órdenes de tabulación tengan sentido).
Etc.
Etc.
Todo se valora y cuenta subjetivamente y se compromete donde tiene que hacerlo. En última instancia, podría ser una filosofía ingenua, pero me sirvió bastante bien. Extrapolate como mejor te parezca.
No está claro si está hablando de cómo crear una buena ventana de diálogo o cómo crear una apariencia coherente para una gran aplicación.
Una buena referencia de cómo diseñar una interfaz de usuario efectiva y clara es el diseño de la interfaz de usuario para programadores por ... espere ... Joel Spolsky.
Nunca he visto el diseño de GUI como una actividad fundamentalmente artística. Si bien es cierto que una interfaz de usuario bien diseñada se puede mejorar con elementos artísticos, el diseño de la interfaz de usuario subyacente es realmente un esfuerzo de ingeniería. Ciertamente, en proyectos más grandes, un especialista GUI es una especialización natural, al igual que tener un especialista en compilación, etc. Pero creo que es el raro ingeniero de software el que no puede crear una GUI efectiva, cuando se le da el tiempo y los recursos para hacerlo.
La mayoría de nosotros hemos aprendido la mayor parte de lo que sabemos sobre la construcción de sistemas, al reconocer la bondad en el sistema existente y luego enrollarlos son innovadores, y manteniéndolos hasta que funcionen. La GUI no es una excepción.
Si está diseñando para el escritorio, puede encontrar pautas para la interfaz del sistema operativo, lo que puede ayudar.
Solo piense en quiénes son sus usuarios desde la perspectiva de su aplicación. Hay un tipo? ¿Más? Luego, para cada tipo de usuario, piense en las grandes cosas generales que quiere lograr. Presénteles esas elecciones generales, y luego vaya desde allí a las interfaces más apropiadas para cada tarea.
Finalmente, si tiene un gran conjunto de pasos, un asistente es bueno porque le permite validar cada paso de a uno por vez. Esto es obvio en una aplicación nativa, pero muy útil en la web.
Lo primero que debe hacer es salir de su punto de vista del desarrollador. Tendemos a pensar en términos de formas, controles, botones, listas, cuadrículas, etc. Y esto tiende a llevarnos a soluciones que no siempre son óptimas para el usuario.
Los usuarios no quieren usar nuestro software. (excepto cuando estás programando juegos) Solo quieren hacer las cosas. Entonces, al diseñar la interfaz de usuario y las interacciones del usuario, tiene sentido comenzar desde allí. Escriba lo que un usuario quiere hacer con su software. Piense en cómo un usuario haría estas cosas y qué podría hacer su aplicación para facilitar las cosas.
Intente trabajar con diferentes herramientas de las que usa para programar. Esto te hace pensar en widgets UI de nuevo. Comience con un lápiz y un trozo de papel para dibujar, también intente pensar en el comportamiento, el diseño, etc. Si tiene una idea clara de lo que quiere construir, puede comenzar a pensar en cómo se siente. va a construirlo. Ahí es cuando entran los widgets, botones y páginas.
Hay algunos patrones de interfaz de usuario presentados en el sitio de patrones de interfaz de usuario que puede encontrar útiles
En general, si está diseñando formularios para Windows, siga las diversas pautas de microsoft.
Un principio que tengo en mente es utilizar patrones de comportamiento existentes (hacer doble clic para ejecutar / activar un elemento, etc.) ya que las personas ya los conocen.
Esto puede ser útil: mejores prácticas-principios-para-gui-diseño