¿Qué ofrece cualquiera de los editores de GUI de Java para un rápido desarrollo y mantenibilidad (es decir, Eclipse/SWT y Netbeans/Matisse)?

StackOverflow https://stackoverflow.com/questions/112854

Pregunta

Entre Eclipse/SWT o Netbeans/Matisse, ¿qué le ofrece cualquiera de los editores de GUI de Java en términos de rápido desarrollo y mantenibilidad?

¿Fue útil?

Solución

Realmente estás haciendo dos preguntas diferentes:SWT frente a Swing y Editor GUI de Eclipse frente a Editor GUI de Netbeans (Matisse).

Primero, la diferencia entre SWT y Swing es que son dos bibliotecas GUI fundamentalmente diferentes.Esto es similar a preguntar la diferencia entre Tk y Win32, o Java Swing vs .NET Forms (por no decir que SWT es .NET).Hay muchas discusiones sobre SWT vs Swing; no sé lo suficiente sobre SWT para resumir las diferencias.

Primero, permítanme decirles que mi preferencia está a favor de Netbeans y que pasé 10 años aprendiendo el IDE desde sus días como Forte.

En cuanto al editor GUI, Eclipse y Netbeans tienen productos funcionalmente similares, pero implementan el código de maneras muy diferentes.

Mi observación es que Matisse se comporta, funciona y produce código que recuerda al código de Visual Studio .NET.Hay secciones de inicialización claras y comportamientos personalizados para ciertos objetos (como JTable).Puede "Personalizar" un objeto y agregar su propio código arbitrario a través del editor GUI muy fácilmente para todo, desde la inicialización hasta la configuración de propiedades individuales.Para el manejo de eventos, de forma predeterminada replica "delegados" en .NET mediante el uso de clases internas anónimas e invocando un método independiente.El propio editor GUI proporciona acceso detallado al modelo de objetos de formulario y tiene un amplio conjunto de personalizaciones.También tiene la libertad de colocar beans que no sean GUI en el formulario para que los utilicen componentes GUI, como modelos (tablemodel, listmodel, etc.), objetos relacionados con JPA, trabajadores, etc.Lo que antes tomaba una semana para producir con SWING codificado a mano, toma un día con Matisse (aunque realmente tienes que aprender a Matisse para hacer esto).Si ha estado codificando swing a mano durante muchos años, entonces vuelva a aprender a usar un editor GUI efectivamente Va a ser una lección larga y dura.

El código es altamente mantenible desde Matisse;NO está diseñado para editarse fuera de Matisse, pero el código es adecuado para editarlo si es necesario (muchas personas que conozco usan la GUI de Netbeans y luego copian la fuente en Eclipse).

El editor GUI de Eclipse es una criatura muy diferente.Los editores de GUI son más o menos los mismos en términos de capacidad general, pero he encontrado que están menos pulidos.Las capacidades de diseño son aproximadamente iguales, aunque a veces los errores son un poco menos indulgentes.Algunas personalizaciones requirieron que fuera al archivo fuente y editara el archivo directamente, en lugar de obtener acceso a las personalizaciones del código a través de la GUI.El código producido es muy diferente al de Matisse.Los componentes GUI se agregan e inicializan mediante "captadores" y se encuentran dispersos por todo el archivo;Esto es bueno porque cada componente está aislado/agrupado en una sola función, pero es problemático cuando es necesario diagnosticar malas interacciones entre la inicialización de componentes.Lo mismo ocurre con los controladores de eventos, muy diferentes a Matisse.

Eclipse tampoco proporcionó ninguna protección contra la edición/rotura/manipulación del archivo GUI producido, mientras que Netbeans era casi desagradable con sus protecciones.En cuanto a la mantenibilidad, el código de Eclipse probablemente esté un poco más cerca de la forma en que un humano produciría código Java...Personalmente, encuentro que el código que produce es más difícil de mantener, pero he estado mirando el código generado por Matisse desde la primera versión beta, por lo que mi opinión no es objetiva sobre este tema.

Netbeans también tiene la capacidad de utilizar el mismo editor para crear aplicaciones de framework Swing, Netbeans RCP, etc.No estoy seguro de si Eclipse hace lo mismo.

Otros consejos

Esto es definitivamente subjetivo: usamos tanto Eclipse como Netbeans.Creo que todo se reduce a una cuestión de preferencia.

Nadie puede decirte cuál es mejor.Esto está completamente sujeto a cambios por desarrollador.Aquí hay una búsqueda en Google de "Eclipse vs Netbeans" y puede ver algunos pros y contras en los que otros ya han expresado su opinión. Eclipse vs.NetBean

Creo que deberías investigar más sobre si quieres que la aplicación resultante esté basada en SWT o Swing.Qué IDE utilizar debería ser el factor menos importante.

Personalmente soy un usuario de Eclipse, pero escuché muy buenas cosas sobre Matisse, así que probablemente lo consideraría si tuviera que crear una interfaz de usuario Swing.Por cierto, si compras MyEclipse, integra Matisse.

Algunos pueden argumentar que el producto final que desea utilizar en realidad depende de lo fácil que sea de usar, lo cual se insinúa en la pregunta.

Este artículo sugiere que el editor Netbeans/Matisse es más fácil de usar, por lo que deberías usarlo en tus proyectos.http://cld.blog-city.com/netbeans_matisse_versus_eclipses_visual_editor__no_contest.htm

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top