2008-09-17 22 views
18

Tengo un conocimiento bastante bueno de lenguajes de programación como C/C++, Java, Python. Pero en su mayoría fueron aprendidos en una sala de clase de la universidad/escuela secundaria donde la mejor interfaz de usuario era un menú numerado. Ya sabes, las estructuras de datos estándar, la implementación de varios algoritmos, el manejo de archivos y similares.¿Por dónde empiezo a aprender sobre la programación de GUI?

Lo que quiero hacer ahora es ingresar a la programación de la GUI. No estoy seguro si estoy preguntando de la manera correcta, pero estoy buscando usar el paradigma WIMP (punteros de menú de iconos de Windows). Quiero colocar botones y formularios. Programación basada en eventos, creo que es la palabra correcta, donde mi aplicación espera hasta que el usuario haga clic en algo, escriba algo, etc.

Dado mi pasado, ¿dónde sería un buen lugar para comenzar? Estoy buscando los siguientes requisitos:

1> Preferiblemente plataforma cruzada. 2> Mucha documentación, tutoriales y, si es posible, código de muestra que puedo aprender de 3> Una buena herramienta de creación de GUI, donde puedo arrastrar/soltar cosas de la manera que quiero que se muestren.

¿Alguna idea o sugerencia para comenzar?

+7

Esta pregunta parece exactamente lo que me gustaría preguntar, pero las respuestas no son las que esperaba. Hubiera pensado que habría más información relacionada con dónde aprender sobre el modelo impulsado por eventos y cómo se organiza el código GUI (si cada ventana termina siendo su propia clase y luego instanciada, o si no, cómo se organiza el menús y controles para ventanas separadas), etc. Pero tampoco quiero crear una pregunta duplicada. – romandas

Respuesta

0

Me gustaría ver el desarrollo de C# .NET y su API WinForms. Es mucho más fácil programar aplicaciones de escritorio GUI para Windows con eso que con la API de Win32. Siempre puede facilitar las cosas de API Win32 más tarde, si todavía es relevante.

Para soluciones multiplataforma, consulte Gtk+, quizás PyGtk. Otra buena es WxWidgets.

Si quiere ser muy original, consulte Shoes para Ruby.

0

Hace muchos años, hice el progreso más rápido en esta área usando Visual Basic. Supongo que todavía es muy fácil de recuperar y el ciclo de código/ejecución/depuración es increíblemente productivo y aprenderá muchas cosas útiles rápidamente. Toneladas de documentación, y todas las demás cosas que desee ...

4

Shoes para Ruby es multiplataforma, muy fácil, y es una breve introducción a la construcción de una ventana y la gestión de eventos que ocurren en ella. diversión también :)

+0

No tengo votos, pero voy a volver y votar esto :) – Aeon

1

Estaba pensando exactamente lo mismo recientemente. Qt parece un buen marco de GUI multiplataforma, y ​​Python parece un buen lenguaje para trabajar.

Así que PyQt es mi (sin educación) sugerencia. Incluye una herramienta de diseño de GUI para arrastrar y soltar.

0

Como ya tiene conocimiento de Java, debe consultar la API Swing here, que proporciona un conjunto bastante potente de paquetes que se pueden usar para crear interfaces gráficas complejas. Además, su plataforma cruzada, hay toneladas de documentación y se puede utilizar con Netbeans IDE.

0

Java's Swing API es multiplataforma y relativamente simple, y NetBeans es un buen constructor de GUI.

3

Está buscando Qt. Es un marco de trabajo de GUI de C++ multiplataforma e incluye todo lo que solicitaste y más.

Es gratis para proyectos de código abierto, siempre que esté utilizando la GPL.

5

Probé el libro About face: Essential of User Interface Design, se centra en las prácticas de diseño para UI, así como en el diseño teniendo en cuenta los objetivos del usuario, es decir, lo que el usuario quiere lograr tratando de alejarte del "diseño de GUI del desarrollador" ".

También revisa un poco de historia sobre el diseño de GUI de Microsoft, Apple y otras compañías. Cosas como los valores predeterminados para MacOsX (donde los botones de aceptar y cancelar normalmente se encuentran, etc.) y los por qué debajo de eso.

También buscaré el Office 2007 UI Design Guidelines para Microsoft ya que probablemente "va a ser una cosa".

1

Eche un vistazo a Glade y Gtk. Ambos son realmente fáciles de usar. Glade es el creador de GUI y Gtk el kit de herramientas. Es a la vez plataforma cruzada y lenguaje cruzado. Puede cargar los archivos Glade en casi cualquier idioma. Aquí hay un Glade/Gtk tutorial

3

Hay una gran cantidad de recursos específicos de lenguaje y de infraestructura de interfaz de usuario disponibles para las personas interesadas en crear UI de aplicaciones. Sin embargo, antes de profundizar en tecnologías específicas, hay mucho que aprender acerca de la interacción humano-computadora y cómo se aplica al diseño de la interfaz de usuario. Algunas referencias a mirar:

Después de investigar lo hace una buena interfaz de usuario, es hora de explorar cómo:

Por supuesto que hay muchas opciones por ahí, incluyendo QT, Fltk y SWT

0

Netbeans es multiplataforma , y si bien está centrado en los desarrolladores de Java, puede instalar fácilmente complementos para trabajar con C/C++, Ruby, etc. Lo uso para desarrollar programas de GUI de Swing porque tiene una interfaz muy simple ce para la creación de GUI simple de arrastrar y soltar. Hay una gran cantidad de buena documentación sobre el desarrollo con Java Swing, y estoy seguro de que hay una gran cantidad de documentación sobre el uso de Netbeans también.

Cuestiones relacionadas