<$BlogRSDUrl$>

Esos aparatos del demonio

Mis notas sobre lo que voy leyendo de ordenadores y periféricos

jueves, junio 30, 2005

101 razones por las que Java es mejor que .NET 


Andamos de celebración de los 10 añitos de Java y encuentro un enlace que seguro que no es nada objetivo, pero siempre está bien tenerlo a mano por si queremos discutir un poco: 101 razones por las que Java es mejor que .NET.

Hay una razón 102: yo sé algo de Java y nada de .NET ;-)

Actualización: Debería haber una razón 103: hoy Sun ha publicado su primera implementación de la especificación de tiempo real para Java. La verdad es que de eso yo no me fío mucho.

Comentarios:

¿Por qué no te fías? Tiempo real no quiere decir "rápido" (que no digo que java sea lento), quiere decir "a tiempo". Y lo único por lo que java puede perder un tick es porque esté funcionando en ese momento el recolector de basura. Me imagíno que esa especificación, entre otras cosas, se asegurará que el recolector de basura no sea "stop the world".

Un saludo.
Supongo que además de tener en cuenta el recolector de basura habrá que tener en consideración muchas cosas más. Por ejemplo: la gestión de prioridades, la planificación de los hilos, la predictibilidad de la funciones, la gestión de la memoria o la precisión de los temporizadores.

Ojo, que yo no digo que no lo hayan tenido en cuenta, simplemente que para conseguir que algo funcione bajo restricciones de tiempo real (que puede ser un microsegundo o dos días) además de cambiar la gestión del recolector de basura hay que tener en cuenta muchas más cosas. De hecho, el sistema operativo Windows ofrece todas esas cosas y ni aún así se puede considerar que cumple los requisitos para ser una plataforma de tiempo real.
Juanjo: ruf lo ha explicado muy bien; yo no me fío porque me parece más difícil obtener predictibilidad con Java, no por cuestiones de velocidad.
Publicar un comentario

This page is powered by Blogger. Isn't yours?

Blogroll
Enlaces
Archivos

Licencia Creative Commons
Este trabajo tiene licencia Creative Commons License.