2009-02-14 21 views
6

Estoy planeando trabajar en algunos proyectos de hobby Java. He realizado algunos proyectos a pequeña escala, por lo que estoy familiarizado con el lenguaje en sí mismo y construyendo una GUI con Swing. Me gustaría hacer que mi trabajo sea un poco menos ad hoc y tal vez encontrar algunas herramientas que puedan ser útiles en el mundo real.¿Existe un mejor marco de aplicación Java que Swing?

NetBeans ahora viene incluido con el Swing Application Framework, que parece ser una herramienta muy útil. Ayuda a salvar el abismo entre saber cómo crear un JFrame y cómo usarlo efectivamente en el contexto de una aplicación más grande. El problema es que hay grandes porciones de la API completamente indocumentadas y prácticamente no hay documentación sobre cómo usarla. Solo hay dos preguntas en las preguntas frecuentes, las listas de correo están casi muertas, y no puedo decir si el proyecto se está desarrollando activamente o si se ha abandonado. Me las arreglé para ponerme en marcha con base en gran medida en el two-year-old JavaOne presentation publicado en la página principal del proyecto.

¿Existe una mejor alternativa? ¿Hay otra herramienta/biblioteca/API que hace el mismo tipo de cosas de una manera un poco más amigable para los novatos? Tenga en cuenta que estoy planeando desarrollar aplicaciones de escritorio en este momento, y no estoy buscando frameworks J2EE como Spring e Hibernate.

Respuesta

5

El basic principles para la creación de una buena sobremesa son los mismos para la creación de aplicaciones web o empresa. Por lo tanto, el núcleo de Spring u otros frameworks como OSGi o PicoContainer se pueden usar fácilmente fuera de J2EE. Por ejemplo, Eclipse uses OSGi como su marco interno. El uso original del patrón Model-View-Presenter (MVC) fue para los widgets GUI de Smalltalk.

De hecho, para mí, primero encontré y trabajé con frameworks "IoC" (mucho antes de Spring) precisamente porque estaba buscando un marco y principios de organización para el desarrollo de aplicaciones de escritorio.

Actualización sobre RCP

Veo algunas personas están recomendando RCP Eclipse o Netbeans. He hecho bastante desarrollo Eclipse RCP y para ciertas clases de aplicaciones, es genial. Sin embargo, la curva de aprendizaje es muy empinada y el conjunto de características puede ser mucho más de lo que necesita. Tenga esto en cuenta para cualquier marco que investigue.

+0

He usado Eclipse en el pasado remoto como un IDE y he estado usando Netbeans últimamente, que es donde encontré el Spring AF en primer lugar. – eaolson

3

Para una biblioteca de GUI me inclino hacia SWT. Eclipse lo mantiene y lo usa para su IDE. Creo que Azureus lo usó también. Se ve bien en múltiples plataformas y es bastante fácil de usar.

+0

SWT no es un marco de interfaz gráfica de usuario, que es un conjunto de herramientas de widgets. Además, es una alternativa completa a Swing. Creo que 'eaolson' está buscando más de un escritorio equivalente de frameworks web como Struts, Wicket, etc. Si usa SWT, entonces debería considerar Eclipse RCP, que es un marco completo. – jaaronfarr

0

También podría usar los enlaces de Java de Qt. Qt es un framework C++ multiplataforma que tiene, en mi opinión, uno de los modelos de objetos más legibles para el diseño de GUI.

Eche un vistazo a Trolltech (Nokia) Qt website.

Puede ver un demo (que también tiene un código fuente) utilizando la función Java Web Start. Da una buena impresión sobre lo que se puede y no se puede hacer y cómo se ve el código fuente.

+0

Ambos enlaces en respuesta están muertos. – Pang

Cuestiones relacionadas