Comparación de las plataformas Java y .Net

Por brian jung
Comparación de las plataformas Java y .Net
Stockbyte/Stockbyte/Getty Images

Java y .Net ofrecen programación y arquitectura orientada a objetos y extensivas clases de frameworks desde las cuales desarrollar aplicaciones. No obstante, la filosofía básica que conduce a ambas plataformas difiere. Java, con la consigna "escribe una vez, ejecuta en cualquier parte", intenta ser un solo lenguaje que, una vez compilado, se ejecutará en cualquier hardware y bajo cualquier sistema operativo. Los programas compilados en .Net, por otra parte, se ejecutarán sólo en Windows, pero pueden escribirse en una serie de lenguajes diferentes (C#, VB.Net, J#, C++, etc.). Esta diferencia básica afecta a casi todos los aspectos de las dos plataformas.

Clases de frameworks

Debido a que la plataforma .Net tiene acceso directo a la API (Application Programming Interface) del sistema operativo Windows, sus clases de framework pueden ser más ricas. Cualquier cosa que una caja de texto de Windows pueda ser o hacer, por ejemplo, está disponible para el programador .Net. Java, que funciona en cualquier máquina y bajo cualquier sistema operativo, debe basarse en expectativas de mínimo común denominador y sus clases de framework sólo pueden ofrecer las opciones más rudimentarias. Como resultado, los programas .Net, especialmente aquellos que tienen complejas interfaces gráficas para usuarios, son a menudo más fáciles de crear mientras que los programas Java requieren o codificación extensa o la adopción de herramientas de terceros.

Multiplataforma ideal

Mientras que el objetivo detrás de la filosofía de Java "escribe una vez, ejecuta en cualquier parte" es loable, en la práctica no siempre funciona. A pesar de los mejores esfuerzos de los desarrolladores en Java, las diferencias entre los sistemas operativos y el hardware se han introducido en la plataforma Java y los programas multiplataforma a menudo implican una tarea de depuración. Por otro lado, el desarrollo en .Net sólo es ligeramente mejor ya que las diferencias entre las diversas versiones de Windows pueden causar problemas similares.

Costo

Java tiene la ventaja, al menos al principio, de ser gratis. El lenguaje y la plataforma son de código abierto y la mayoría de las herramientas de desarrollo que usa Java también son de código abierto. Sin embargo, muchas de las extensiones a nivel empresarial para el lenguaje no son gratuitas y pueden ser muy costosas. Para el desarrollo web básico, Microsoft ofrece herramientas .Net gratuitas, pero la mayoría del as aplicaciones importantes, se necesitan comprar licencias de Visual Studio para desarrollar en .Net. La mayoría de los análisis de costos le dan a .Net una ventaja cuando se trata de costos de propiedad a largo plazo.

Conocimiento del desarrollador

Debido a que está disponible gratuitamente y funciona en plataformas múltiples, las universidades enseñan Java más a menudo que .Net. Por lo tanto, una comparación en veridicus.com sostiene que adoptando la plataforma Java un departamento de IT tiene más probabilidades de atraer a desarrolladores capacitados más formalmente y disciplinados. Java, debido a que ha estado por más tiempo, también tiene un mayor volumen de ayuda disponible en línea en forma de grupos de discusión, foros y tutoriales.

Referencias