Pregunta

Estoy trabajando en el diseño y construcción de una aplicación de escritorio.Estoy pensando en usar eclipse o netbeans como base de esta aplicación.Sin embargo, nunca he construido en ninguna de estas plataformas.Personalmente, me inclino por usar netbeans porque parece que esa plataforma es una curva de aprendizaje más fácil.Pero quería preguntar a las personas que realmente han construido en estas plataformas, ¿cuál es más fácil de usar?

Mi definición personal de más fácil es la siguiente:

  • Fácil de empezar

  • API consistente y lógica

  • Buena documentacion

  • Fácil de construir e implementar

Muchas gracias,

josh

¿Fue útil?

Solución

No puedo decir lo suficiente sobre la plataforma Eclipse RCP.Lo recomendaría para cualquier desarrollo de aplicaciones de escritorio Java.

Es gratis, tiene excelentes tutoriales y permite el desarrollo multiplataforma de aplicaciones de escritorio enriquecidas que utilizan el kit de herramientas de ventanas del sistema operativo nativo, lo que significa que su aplicación se verá nativa en cualquier plataforma.También tiene una API limpia que no interfiere y hace que la implementación en cualquier plataforma sea pan comido.

Si estás interesado echa un vistazo a este libro: http://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

Otros consejos

  • Fácil de usar:Tengo experiencia desarrollando en Eclipse y debo decir que no es fácil entender su modelo de desarrollo.Claro que para cosas básicas tiene algunos asistentes que lo hacen más fácil, pero para algo un poco más complejo es simplemente difícil.No sé sobre Netbeans, pero escuché que es más fácil.
  • API consistente:Creo que Eclipse gana en este aspecto.Se ejecuta sobre OSGI (aunque aporta cierta complejidad) y tiene extensiones de complementos para prácticamente todo.Parece ser la plataforma elegida para el desarrollo de complementos, por lo que puedo asumir que es confiable.
  • Documentación:Eclipse gana por lejos.La ayuda del sitio eclipse es excelente y la lista de correo tiene muchas preguntas de los usuarios.

He usado Eclipse como base de marco, pero principalmente usaba SWT; realmente no usamos mucho de RCP.

Realmente depende de lo que estés escribiendo, pero por lo que he aprendido al usar Eclipse, en realidad solo es adecuado para escribir una aplicación que implique editar datos usando varias vistas (al igual que editar código).

Cualquier cosa más aleatoria que eso puede hacer que comiences a empujar el marco en una dirección que no fue diseñada y provocar fallas masivas.

Utilizará Swing para desarrollar su aplicación porque cualquier otro marco de ventanas es útil sólo si tiene conocimientos previos o la experiencia adecuada.

Puedes confiar en http://www.javadocking.com/ para agilizar su solicitud.

Si los requisitos de su aplicación se centran mucho en la interfaz de usuario, tal vez pueda mirar en otra dirección, como Adobe Air.

RCP tiene una curva de aprendizaje más grande, pero una vez que aprende los conceptos básicos, el IDE de Eclipse admite muy bien la creación de aplicaciones RCP.Solo creé un complemento para NetBeans (no creé una aplicación completa), y la curva de aprendizaje fue menor que para la aplicación RCP.El libro Plataforma de cliente enriquecido Eclipse:Diseño, codificación y empaquetado de aplicaciones Java(TM) proporciona una introducción detallada a la creación de aplicaciones RCP.

Consulte algunas de las aplicaciones de código abierto en http://www.eclipse.org/community/rcp.php antes de opinar que RCP es solo para construir un editor de texto.Gracias.

Tengo una tarea similar y también estoy considerando marcos diferentes.Tengo algo de experiencia con Eclipse (~4 meses desarrollando RCP) y ahora Netbeans (jugué durante un par de días).En mi humilde opinión, estos marcos son demasiado complicados.Simplemente terminas depurando en cargadores de complementos específicos de Eclipse tratando de descubrir por qué obtienes una ClassNotFoundException o un NullPointer.La misma historia con NetBeans:de alguna manera, en algún lugar lee archivos de configuración xml y crea una interfaz de usuario a partir de eso, genial, siempre que sigas el tutorial.Y, por supuesto, no puedes desarrollar un RCP basado en Eclipse usando algún otro IDE, NB también está muy celoso de su uso (a menos que hagas algunos trucos como lo hice yo).Lo que me falta es una forma clara de depurar mis subprocesos desde el principal hasta la acción realizada.En cambio, siempre me dicen lo que tengo que hacer para evitar excepciones.Y por eso tengo que cruzar los dedos cada vez que intento hacer algo nuevo.Y nunca funciona la primera vez.Ahora pensé en las características que necesito y busqué proyectos más pequeños que apuntan a funcionalidades específicas como la administración de complementos, por ejemplo.Y hay muchos.Simplemente compila una lista de las funcionalidades que necesitas y comienza a agregar marcos más pequeños integrándolos en tu proyecto.Esto también tiene sentido ya que su proyecto debería consumir menos RAM al final.

He trabajado un poco con ambos, pero solo en aplicaciones relativamente simples.Ambos parecen tener capacidades aproximadamente iguales.Personalmente prefiero la plataforma Netbeans porque tiene más sentido para mí.

También debería considerar JSR-296, el marco de aplicación Swing.Proporciona un marco básico para crear aplicaciones Swing, administrar los recursos, el estado, etc. de la aplicación, pero sin tanto "equipaje" como Netbeans y Eclipse.Netbeans IDE tiene varias herramientas para crear aplicaciones en SAF.Ver https://appframework.dev.java.net/ para más información.

Sin saber más sobre su aplicación, es difícil señalarle las fortalezas y debilidades apropiadas de las dos plataformas.

Si realmente desea evitar el mantenimiento multiplataforma, trabaje con Swing.Esto te compra todas las plataformas.RCP requiere bibliotecas nativas para cada plataforma.

Hemos tenido buenas experiencias con Swing.

Usaría eclipse RCP cuando realmente necesites construir una plataforma encima, no solo "artilugios" como swing o swt.RCP es sólido y consistente, modular y muy flexible.Una vez que lo domines, obtendrás enormes beneficios.Al ser una plataforma, le brinda las cosas más utilizadas: preferencias, configuraciones, actualizaciones automáticas, administración de diseño, marca y cosas así.Usted construye un producto, no una aplicación.Pero la curva de aprendizaje es bastante pronunciada al principio.

Swing, por otro lado, no es una plataforma, reinventarás la rueda escribiendo tus propias cosas que mencioné anteriormente.Pero sí, el swing es más rápido de aprender y empezar.Creo que se adapta mejor a aplicaciones más pequeñas con una vida útil más corta.

Mire algunas de las aplicaciones de código abierto en http://www.eclipse.org/community/rcp.php antes de abrir ese RCP es solo para construir algo.

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