Buscar
Social
Ofertas laborales ES
lunes
nov032008

JavaHispano Podcast - 021 - Dudas del foro Noviembre (a)

En el este número estrenamos una nueva sección llevada de la mano de Ruben Egiluz y Rugi. Esta sección tratará de dudas concretas expuestas en el foro que aportan cierto valor didactico.

Inicialmente haremos una pequeña introducción de buenas prácticas en el momento de preguntar en el foro donde sugerimos leer el siguiente link:

http://www.sindominio.net/ayuda/preguntas-inteligentes.html

A continuación se hablará de los siguientes temas:

sábado
nov012008

JDO2.2 liberado

El grupo de Apache JDO ha liberado la especificación y APIs de JDO2.2. JDO es una especificación de persistencia para objetos Java, definido por el proceso JCP como JSR0243. Esta revisión (2.2) incluye

  • Capacidad de elegir el nivel de aislamiento (isolation) de la transacción
  • Fetch groups por API (dinámico)
  • Soporte para base de datos en sólo lectura.
  • Soporte para elegir cuales de las clases/campos se ponen en el caché

La implementación de referencia de JDO2.2 es DataNucleus AccessPlatform 1.0

El desarrollo de JDO sigue en la versión 2.3, y es muy probable que la version 2.2 sea la última versión que de soporte a JDK1.3/1.4.

viernes
oct312008

Segunda Release Candidate de Netbeans 6.5

Con toda probabilidad, esta será la última versión antes de la versión definitiva, que debería publicarse en Noviembre. Una buena parte de las novedades de esta versión no están directamente relacionadas con Java: soporte para PHP, soporte para Groovy y Grails, soporte para Spring e Hibernate, y mejoras en soporte de Ruby, C y C++ . En el campo Java, una característica interesante es la de compilar y desplegar el proyecto cada vez que se guarda, de un modo similar a como funciona Eclipse. En esta RC 2  han añadido soporte para Glassfish v3.


 
Esta versión también tiene mejoras en los asistentes para conexión y exploración de bases de datos, mejoras en el debugger, en especial cuando se trabaja con aplicaciones con varios thread, y mejoras en el soporte de UML. En lo referente al soporte de JavaScript, esta versión soporta depurar JavaScript que se está ejecutando en Firefox o Internet Explorer, y el entorno de desarrollo trae empaquetadas varias de las librerías JavaScript más populares.

viernes
oct312008

Hibernate en castellano

Dando vueltas por ahí me encuentro con Hibernar.org, un foro y comunidad en castellano de Hibernate, el framework de persistencia de objetos Java. Lo más interesante del sitio es que cuenta con un manual de Hibernate en castellano, basado en la versión 3.3.1 de este framework. El manual está en proceso de traducción, pero ya cuenta con gran cantidad de capítulos traducidos.

Sin dudas es una excelente opción para aprender algo más sobre Hibernate.

jueves
oct302008

La cosa más rara de la plataforma Java según Joshua Bloch

En una entrevista que le han hecho a Joshua Bloch en java.sun le han preguntado qué era para él la cosa más rara de la plataforma Java. Su respuesta ha sido un poco sorprendente: que el tipo byte tiene signo. Según él, esto es bastante anti intuitivo y puede causar muchos errores.

En uno de los comentarios del post en TSS se apunta otro hecho que, al menos a mí, me ha resultado más interesante: el tipo char es el único tipo sin signo de Java, lo cual puede dar lugar a resultados bastante poco intuitivos:
byte b = -1;
System.out.println(b);
System.out.println((int) b);
System.out.println((int) (char) b);

Produce la salida:
-1
-1
65535 


Si me preguntais a mí, una de las cosas que más me choca son algunas decisiones que se han realizado en el lenguaje respecto al uso de las excepciones en algunas librerías. Por ejemplo, nunca he entendido que el método close de File lance una excepción. Y, en general, me parece que se abusa bastante de las excepciones cheked en todo el paquete java.io y java.net. Para tres líneas de código real que quiero escribir abajo menudo bloque de código acaba quedando por culpa de las excepciones...

 

        File f = new File ("...");
        try {
            FileReader fileReader = new FileReader(f);
            try {
                fileReader.read();
            } catch (IOException ex1) {
                try {
                    fileReader.close();
                } catch (IOException ex2) {
                    //¿y aqui qué demonios hago?
                    //¿vuelva probar fileReader.close();?
                }
            }
        } catch (FileNotFoundException ex) {
        ...
        } 

¿Cual es la cosa más rara de Java para vosotros?