Liberado SQL Data Workshop

Después de poco más de año y medio de tiempos libres dedicados y, gracias a que mi compañera de trabajo me ayudó con la documentación, he podido liberar una herramienta que se conecta con los gestores de base de datos más populares para permitir al usuario realizar operaciones SQL.
No es una herramienta de administración completa, más bien está enfocada en la ejecución de consultas y obtenciónde datos. de igual forma, tiene un diseñador visual de consultas (muy parecido al SQL Server Management Studio) aunque con menos prestaciones en esta parte. Aunque estás líneas presenten cierto sesgo, puedo argumentar que esta herramienta la utilizo a diario en mi trabajo y me siento cómodo trabajando con ella. Aun faltan mejoras, las cuales iré incorporando con el paso del tiempo.
La aplicación está completamente construida en Java y Swing. Para el retoque visual y gestión de componentes y documentos utilizo el framework jidesoft (. Aunque es una librería de pago, la compañía me ha proporcionado una licencia totalmente gratis para incorporar la librería en la versión final.
Esta es la página del proyecto:

Actualización:

A petición de varios usuarios, he subido la versión 0.8.5.2, la cual es idéntica a la versión 0.8.5.1 con la diferencia de haber hecho modificaciones menores en algunas partes del código fuente para tener compatibilidad con Java 1.6.x.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

licencia

Y cómo le hacen para darte una licencia gratis para una herramienta de pago, y que la puedas incluir en un producto open source?

Pregunto porque pues... cómo le hacen para evitar que todo mundo copie esa licencia de tus fuentes y usen ese software sin tener que pagar...

Imagen de Grios

Te dan una línea de código

Te dan una línea de código que hace referencia a una clase de la misma librería e invocas un metodo estático donde pasas como parámetro un username y un password proporcionados por ellos también. Esa instrucción se realiza en el método main de la aplicación antes de realizar cualquier otra cosa.

Lo que hice fue quitar esa linea de código del codigo fuente que subí para distribución. Claro que mediante herramientas de decompilación que llevan al código fuente original quizás alguien puede obtenerla... Después de todo... como decía un vándalo de la zona donde vivo: "toda chapita tiene su llavecita".

Cuando no tienes una licencia, bajas la version trial que caduca a los 30 dias y después vuelves a bajar otra... Es un proceso tedioso... pero de alguna forma, las aplicaciones basadas en swing si mejoran considerablemente su aspecto.

Saludos!

Imagen de ezamudio

javafx

Y no intentaste usar JavaFX? tal vez se vea mejor, y con eso que va a suplir en algún momento a Swing...

Imagen de Grios

Sí, intenté utilizar JavaFX.

Sí, intenté utilizar JavaFX. Y aunque es la apuesta de Oracle para sustituir a swing, la verdad es que hasta ahora, queda mucho por desarrollar para que sea una tecnología completa. Solo por darte un par de ejemplos:

1. No existe soporte para dockings. Si quieres que una aplicación tenga componentes "acomodables" al estilo de netbeans, la solución de Oracle (https://forums.oracle.com/message/10102886) es utilizar Netbeans Platform, Eclipse Platform u algun otro. Mi solución fue utilizar el mismo framework de jide. Sin embargo, esto implica tener dependencia de swing ó swt, al menos hasta este momento.

2. La tablas bajo JavaFX2 aun no tienen soporte para rowheaders ni tampoco tienen la potencia de JTable (https://forums.oracle.com/message/10385347).

En lo personal, algunas de las aplicaciones que he desarrollado han sido para escritorio. Y aunque en muchos foros y blogs he visto una apatía sostenida en contra de swing, en lo que a mi respecta, sigue siendo una tecnología bastante buena que tiene sus bondades y sus defectos. Pero en lo general, funciona bastante bien. Y mientras JavaFX 2 no tenga una suite de controles y prestaciones completas, va a ser difícil liberar un producto 100% Java FX.

Como complemento, para este proyecto también probé tecnologías como Apache Pivot http://pivot.apache.org (¿competencia de javaFX?) y Amino Swing Framework https://github.com/amino/amino. Sin embargo, seguí prefiriendo Swing.

Para la siguiente versión de SQL Data Workshop estoy pensando en mezclar ahora sí javaFX para la parte de los menús y toolbars para diseñarlos al estilo de ribbon (como el office 2007/2010/2013) y utilizar Java Swing para todo lo demás.

Imagen de julgo

mas de javafx

- javafx cuenta con scene builder desde ya mucho tiempo como diseñador gui basado en XML y puede integrarse a netbeans o solo si lo prefieres.
- puedes embeber cualquier componente swing en una aplicación javafx por lo que un jTable también es valido .

Imagen de Grios

Así es, conozco scene

Así es, conozco scene builder, aunque cuando he trabajado con JavaFX, prefioero hacer el FXML a codigo puro, desde mi perspectiva, scene builder facilita la ayuda cuando no estás familiarizado con producir GUI's desde lenguajes de definición o marcado, porque también requiere de más funcionalidad implementada.

Por otra parte, como dije en el post anterior, construir una aplicación javafx "pura" es dificil y por ahora, se requiere dependencia de swing/swt para tener acceso a componentes no disponibles en javafx. Esto lo digo porque ya he hecho aplicaciones javafx/swing mezclando ambas tecnologías.

Saludos!

Imagen de julgo

- con la gran cantidad de

- con la gran cantidad de IDES y soporte para interfaces graficas hacer el código a mano no me parece muy productivo ,yo también solia hacerlo pero al final llegue a la conclusión que nadie te va dar un premio o un reconocimiento plus por ello , si bien es cierto que algunos diran que se aprende mas y te da satisfaccion hacerlo asi desde cero . las tablas se retiraron por que piensan cambiar de api basada en nodos.
a mi me parecio comodo scene builder pudiendo editar el código fxml desde el netbeans .

Imagen de Grios

Es relativo.

Desde mi perspectiva, en el caso de JavaFX concretamente, el uso de scene builder es relativo para la productividad, ya que ahorita no da muchas opciones de productividad. Y teniendo bien claro lo que quieres diseñar, como quieres que se vea, en que lugar cada componente, aventar el código a mano es rapidísimo, pues por ejemplo, netbeans, te autocompleta y refractoriza un montón de código.

Quizás en un futuro (espero que cercano), el uso de un Scene Builder va a ser más productivo que el código a mano. Y en mi caso, no es cuestión de premios, es cuestión de facilitarme la vida en el estado actual de JavaFX, reitero.