Yo uso Azureus todos los dias y es un ejemplo de como se puede hacer
una aplicacion desktop java que sea tan buena o mejor que en codigo
nativo. Ademas me doy el gusto de correr la misma aplicacion en cuanto
OS quiero!. Todo el software deberia ser asi de portable.
http://azureus.sourceforge.net
El prejuicio sobre java no es nuevo. Viene porque Java 1.x era
realmente malo, el look and feel de las aplicaciones era horrible, y
las maquinas no tenian por entonces memoria
suficiente (te lo dice alguien que corrio Java 1.0.1 de IBM en OS/2
Warp 4.0 en una Pentium 100 con 64mb de ram). Ademas, mucha gente
piensa que "java = applet" de la epoca en que applets java era lo unico
que se podia hacer, y el runtime java venia "embebido" en el browser
(caso Netscape 4.x)
Hoy en dia en maquinas con CPUs arriba del Ghz y 512MB de ram o mas, y
usando un java reciente (J2SE 5.0 o superior, aka 1.5.0) es
imposible percibir la diferencia con una aplicacion C++. Estoy hablando
de apps bien hechas (ej: azureus).
El nuevo Java v6.0 ("Mustang") que esta en beta y proximo a salir tendra muchas de las cosas que la gente
venia demandando desde hace aņos, acceso a raw tcp/ip sockets, FONT
ANTI-ALIASING (por fin!) -en linux OS-X y winblows al menos-, look and feel nativo usando widgets nativos de cada
OS (ej: WinXP, Vista, Gnome) en lugar de dibujar los propios, start-up
de la VM bastante optimizado, etc etc etc.
Ver:
Font smoothing in Gnome and and new Gtk look-and-feel
http://www.ffnn.nl/pages/articles/java/java-2-se-6.0-aesthetics-preview/gtk-look-and-feel-1.6.0-screenshots.php
Font smoothing in Java (Netbeans screenshot on Vista)
http://weblogs.java.net/blog/chet/images/SwingSetd.PNG
Java 6 mustang adds mozilla encryption plug
http://blogs.sun.com/roller/page/andreas?entry=the_java_pkcs_11_provider
Mustang Hotspot Client Achives 58% Performance Improvement
http://www.javalobby.org/java/forums/t54006.html
Ah, tambien es posible hoy en dia hacer cosas en Java que antes no se
podian como minimizar apps a un icono en el systray / gnome panel,
llamar al browser por defecto del OS sobre el que esta corriendo, idem
con el cliente de e-mail, etc. Mandar jobs a imprimir, etc. ver proyecto JDIC (Java Desktop
Integration Components).
http://jdic.dev.java.net/
Pero en vez de creerme, podes bajarte "Art of Illusion" un renderer 3D,
Azureus (cliente Bittorrent), Phex (cliente Gnutella), el editor jEdit,
o si lo conseguis el "Photomesa for Java v2.0" * y ver por vos mismo.
http://www.artofillusion.org/screenshots
http://azureus.sourceforge.net
http://phex.kouk.de
http://www.jedit.org
(* una especie de Picasa hecho en Java, impresionante). Lamenteblemente
la emrpesa que lo hacia WindsorInterfaces, al ser a diferencia de los
de mas arriba un soft "shareware" propietario, se vendio a Microsoft y
portaron Photomesa a ".Net" (dot-Not como digo yo ;), con lo cual hasta
ellos admiten que es LENTO comparado con la version anterior, pero sin
embargo retiraron la version java de su web site. Curiosamente la
empresa recibio financiamiento de "la Bestia de Redmond", tengo
entendido.
Ok, suficiente java "privativo" para esta lista.
Hablando de Open Source... :) .... me confirmaron ayer que gente de
Cordoba esta entre los principales involucrados en desarrollar el Java
VM open source con autorizacion de Sun - ("proyecto Harmony" de la
Apache software foundation)... la verdad me senti muy orgulloso por ver
gente de mi pais involucrada en eso y mezclada con gente de Intel, IBM,
por caso .
FC