Leo la primera entrega de las
101 razones por las que Java es mejor que .net y no estoy completamente de acuerdo. Leo una
réplica y tampoco me convence del todo.
Esta es mi opinión sobre estas razones (las he enviado al autor y al
replicante por mail, espero sus respuestas):
1) Run on Multiple Platforms from the Smallest Devices to the Largest Mainframes
En cuanto a plataformas disponibles, .net alcanzará las que Java tiene disponibles. Algunas como los dispositivos móviles tienen su
entorno de desarrollo y
Mono ayudará a que puede ejecutarse en entornos libres.
2) Run Dynamic Languages
No sé a qué se refiere el autor con 'dynamic languages'. Si se refiere a lenguajes con tipado dinámico, desde luego python.net es un gran ejemplo de cómo tirar una buena idea a la basura :'(
Actualización: En efecto, se refiere a lenguajes de tipado dinámico. Estoy convencido de que si .net tiene éxito y no se convierte en un monopolio de Microsoft surgirán conversiones o puentes decentes con python, ruby...
3) Compile in One Platform Run in Another
Teóricamente cualquier código compilado a CLI puede ejecutarse en un entorno que siga el estándar CLR. Todo sabemos que es Microsoft quien anda detrás de todo esto, pero al menos ha certificado esos estándares
como Dios manda.
4) Smaller Runtime Download
Lo de los 12Mb de diferencia a favor de la máquina virtual de Java me parece la excusa perfecta para hacer limpieza en el disco duro :-) Los dispositivos móviles tienen máquinas virtuales reducidas en ambos casos.
5) No mandatory upgrades. No subscription fees. No software insurance fees
El problema de Microsoft es que a estas alturas todos sabemos de su estrategia "extend and embrace", pero Sun tampoco juega limpio:
sólo ha permitido implementaciones libres de su JVM tras la amenaza de .net, a día de hoy no puedes distribuir la JVM con tus aplicaciones sin llegar a un acuerdo con Sun. Esperamos fervientemente la llegada de versiones libres.
Actualización: La JVM de
Blackdown para Linux (tras llegar a un acuerdo con Sun, y en ocasiones
tirándose los trastos a la cabeza) lleva años distribuyéndose libremente (gracias
rvr). El cambio de Sun al que hacía referencia es que ahora permite implementaciones independientes de las especificaciones de tecnología Java, más información en
este artículo de javaHispano.
Esta es mi opinión, ahora espero las vuestras ;-)