Suele haber confusiones entre Java y .Net. Algunos programadores dicen que .Net es una respuesta de Microsoft a la competencia de la plataforma Java de Oracle Corporation. ¿Pero cuales son las diferencias exactas?
Java surgió en 1991 como un lenguaje destinado a principios electrodomesticos asi que la primera version era un lenguaje sencillo. La compañía Sun describe a Java como “simple, orientado a objetos, distribuido, interpretado, robosto, seguro, de arquitectura neutra, portable, de altas prestaciones, multitarea, y dinámico”. Este es un lenguaje de sintaxis muy similar al lenguaje C y al C++.
.Net, por su parte, es una gama de productos. .NET de Microsoft consiste en una serie de tecnologias de software para conectar información, personas, sistemas y dispositivos. Muchas personas que comienzan a trabajar con el, dicen que debido a su complejidad, .Net es un concepto confuso. Es la solución de Microsoft para servicios Web, la proxima generación de software que conecta nuestro mundo de información, aparatos y humanos, en una forma personalizada y unificada. Muchos programadores se cuestionan cual es el mejor lenguaje para .Net. Los dos grandes lenguajes del entorno de .NET son C# y VB.
La idea de funcionamiento de estos elementos es que todos lenguajes se conviertan en un único lenguaje siendo este un precompilado en .NET llamado IL y en JAVA Bytecode, un detalle llamativo el lenguaje para IL es MSIL al cual lo describen como un Bytecode para .NET. El concepto de maquinas virtuales que terminen de compilar la aplicación es común para estos elementos, en .NET existe el llamado JIT (Just In Time Compiler), el cual es una traducción dinámica determinada a convertir nuestra aplicación a lenguaje maquina para cada arquitectura en particular, por el lado de JAVA existe la llamada JVM(Java Virtual Machine) la encargada de terminar de complicar la aplicación dada la arquitectura sobre la que trabaje.