2012-06-23 8 views
7

He estado codificando en Java durante el año pasado, y creo que tengo OO sólido y habilidades básicas de OOD. Estoy buscando construir una GUI de Java sobre un proyecto existente que no sea complejo, pero quiero finalizarlo lo más rápido posible. Así que estoy buscando una API que abstraiga todas las implementaciones esenciales y me permita centrarme en el núcleo de mi producto mínimo viable.¿Cómo aprender Java Swing y hacer GUIs rápidamente?

Realmente prefiero codificar con eclipse y no perder el tiempo tratando de aprender a acostumbrarme a otro IDE. ¿Qué sugieres que haga?

+1

* "¿Qué sugieres que haga?"* Dado que toma tiempo comprender los diseños para hacer una GUI de tamaño variable y multiplataforma, y ​​dadas las limitaciones de tiempo, le sugiero que contrate a alguien. –

+0

@AndrewThompson No estaba diciendo que quisiera un componente de estilo VB pero sí Hay muchas maneras de hacerlo, así que solo les pido a los usuarios de ST que puedan sugerirme su experiencia. – Tom

+1

Yo, segundo @AndrewThompson. Si fuera así de sencillo y directo, no habría tantas preguntas con el Swing. marque aquí en SO. Pero recomiendo comenzar con los tutoriales del administrador de diseño Oracle Swing – Robin

Respuesta

6

Bueno, en realidad el Constructor de GUI en Netbeans es su mejor opción para hacer una GUI realmente rápida. Puedes hacerlo en cuestión de minutos si tienes la imagen en tu cabeza de cómo se supone que debe verse. Después de eso, lo único que queda por hacer es vincularlo a su aplicación; más específicamente: haga que los ActionListeners de sus botones, por ejemplo, hagan lo que deberían.

Esto, por supuesto, depende del tamaño de la aplicación. Si es pequeño, hacer una GUI es fácil. Si, por otro lado, tiene 2000 clases, entonces puede ser más complicado, ya que la GUI probablemente será más complicada.

Si la aplicación se puede modelar como una arquitectura Model-View-Controller, eso le ayudaría mucho.

+1

Err, ¿no nos dijo algo acerca de "prefiera codificar con eclipse" y "no perder el tiempo para aprender a acostumbrarse a otro IDE"? Netbeans califica perfectamente para "otro IDE": D –

+0

@Andreas_D Es verdad, tienes razón. Pero creo que el Constructor de GUI en Netbeans es el mejor. Creo que 'X + Y

+1

http://www.eclipse.org/windowbuilder/ (Pero, para ser honesto, todavía prefiero el enfoque de estilo antiguo: lápiz y papel para redactar el diseño y la codificación directamente) –

2

Me parece que eclipse RCP podría ser su amigo (si está buscando una solución de cliente enriquecido). Simplemente dibuje una distribución de eclipse para el desarrollo de complementos (mucho más rápido que instalar los complementos en su copia existente), cree uno de los proyectos de muestra y comience a piratear.

Para aplicaciones web, recomendaría el marco de juego. Se integra bastante bien con el eclipse.

+0

Y está la plataforma NetBeans, si lo prefiere Swing sobre SWT. Pero aprender un RCP lleva tiempo. – Puce

+0

No recomendaría RCP a cualquiera que esté buscando una forma rápida de hacer una GUI. –

4

Creo que descubrirá que no hay una forma real de GUI en Java. Cada enfoque es un dolor en el (*). Incluso si usa un constructor de GUI visual, TODAVÍA será un dolor en el (*). Como una inversión a largo plazo en sus habilidades, le recomiendo que muerda la bala y aprenda a construir la GUI programáticamente. Eso es lo que hacen todos los desarrolladores experimentados de Swing, así que mejor dirígete directamente a ese objetivo. También podrías comenzar con SWT/JFace, pero ese APi es más difícil y peculiar que Swing. RCP agrega otra capa de peculiaridad y complejidad sobre SWT/JFace, por lo que me mantendría alejado de eso mientras aún soy un principiante, y de hecho en todo momento, excepto si hago una aplicación de GUI masiva.

11

Aquí está el curso intensivo de swing.

Lo primero que debe saber es el layout managers. Este es el gran obstáculo, son cosas complicadas y usted tiene que dominarlas.

En segundo lugar es oyentes, sin ellos no pasa nada.

En tercer lugar están los JComponents, lentamente los aprenderá a medida que avanza. Recomendaría utilizar el creador de la interfaz gráfica de usuario de NetBeans para jugar con ellos y tener una idea de ellos.

Tenga en cuenta que la mayoría de los componentes de J tienen diferentes modelos que puede usar en lugar del predeterminado.

También la única diferencia entre JPanels y JComponents que puedo encontrar es que los JPanels tienen administradores de diseño.

Un buen lugar para los diversos cortes de swing y tutoriales está aquí:

http://www.java2s.com/Tutorial/Java/0240__Swing/Catalog0240__Swing.htm 

http://www.java2s.com/Code/Java/Swing-Components/CatalogSwing-Components.htm