213e Java vs Mono .NET ( C# ) en GNU/Linux
Dahdi 2.4.1, Asterisk 1.6.2.18, dchan, Changing signalling on channel 16 Microsoft ha perdido en el internet
Apr 27

Hoy tuve varias discusiones sobre que es mejor .NET o JAVA, Se dijeron varios argumentos, desde cual es mas empresarial, mas profesional, el mejor código e incluso el rendimiento

Java lo tiene todo, es elegante, muy profesional, ideal para desarrollo empresarial pero me fallo a la hora del rendimiento, es cierto que sus programas no son exactamente los mas veloces.

Entonces quise saber cuánta era la diferencia en rendimiento de JAVA contra .NET en Linux, el resultado es abrumador, al menos la implementación de mono hace que el código de los programas .NET se ejecuten mucho más rápido que los programas JAVA

Para que no tuviera interferencia de otros procesos, pare todo los servicios de internet, incluso la swap, dejando al kernel libre para ejecutar los 2 programas y tomando el tiempo con time

No le fue muy bien a Java en rendimiento ni siquiera por que fue compilado y ejecutado por los programas de ORACLE, antes SUN java versión 1.6.0_25 y Mono 2.6.7

Parece ser que Miguel de Icaza ha hecho un excelente portado de una tecnología de Microsoft a GNU/Linux y la ha hecho tan bien que se ejecuta mejor que Java.

A Java aun le queda la elegancia de su código y que es mucho mas profesional, sin embargo esa elegancia y clases, rutinas y etc de la gigantesca librería de Apis de java parece que le han pasado una factura de ejecuciones pesadas.

Un video demostrando la situacion

Articulo relacionado

20f2

12 Responses to “Java vs Mono .NET ( C# ) en GNU/Linux”

  1. Fernando Dice:
    Usando: Safari 534.16 En: Mac OS X

    es interesante lo que mencionas sobre lo que queda de java, solo por aclarar y no es que sea dotnetero aporreado de pecho ni nada por el estilo, solo que el que tu digas que java es elegante en el código es una contradicción la que tienes, ya que c# es sintacticamente igual que java, me sorprende que mucha gente cree que .net es el lenguaje y no, .net es la plataforma y no solo se desarrolla en c# sino tambien en vb.net, iron python/ruby, f# y un sin fin de de lenguajes que corren arriba del clr (virual machine para los javeros), hablando del lenguaje, hace años que java se siente obsoleto, sigue sin tener dinámicos, genéricos y demás, cosa que c# implementa desde hace un buen de tiempo.

    para mi la elección entre uno y otro es mero arguende filosófico y ya no es un tanto técnico, ambos son buenos, ambos se usan mucho, yo estoy contento con ambos, no me dejo llevar por filosofías que no llevan a nada, aun si, como plataforma .net es mejor…. xD

  2. FantasmaNegro Dice:
    Usando: Mozilla Firefox 4.0 En: Windows XP

    Efectivamente, los tiempos son bastante diferentes, pero posiblemente no se deba al “buen diseño” de .NET sino a la “gracia” de MONO

    por favor alguien expliqueme en que consiste la elegancia del codigo JAVA, por que tengo entendido que la “elegancia” de codigo depende del desarrollador.

    en lo personal hace muchos años maneje JAVA y al menos para hacer DEBUGs y diseño de Interfaz es un dolor de cabeza.

  3. z3r0k3y Dice:
    Usando: Mozilla Firefox 4.0 En: Linux

    Ps a mi me sigue gustando Java, y la verdad no hubiera pensado en hacer una prueba de rendimiento, pero ps ni modo .net se llevo el performance

  4. Administrator Dice:
    Usando: Safari 531.21.10 En: Mac OS X

    La elegancia se debe a quebal ser un lenguaje 100% objetos te obliga a trabajar con clases y da cierta estructura al lenguaje , no se si alguien ha escrito en pascal pero hay que ser bien tarado para escribir mal código en pascal , el lenguaje te obliga a hacerlo bien

  5. FantasmaNegro Dice:
    Usando: Safari 534.16 En: Mac OS X

    Supuestamente la tendencia de los lenguajes de programacion de ultima generacion es el manejo de los objetos como tal, pero de la misma manera que la elegancia al escribir codigo, solo depende del caso que sean necesarios, si estamos hablando de las clases o estructuras de antaño… claro esta que segun es ahora todo un objeto, espero no estar erroneo.

    ahora bien respecto a pascal, lo maneje desde los discos de 5 1/4, pasando por la version turbo pasca (incluso con el problema que tuvo al entrar los nuevos procesadores) pasando por delphi (solo un rato) y en el caso de pascal si se podia hacer que el compilador no te obligara a hacer bien las cosas, pero eso solo lo hacias con las directivas de compilacion si mal no recuerdo.

    saludos!

  6. majimenezp Dice:
    Usando: Mozilla Firefox 4.0 En: Windows NT

    [Offtopic]
    Last Dragon aprovechando el espacio en los comentarios en este tema, se les hace una invitacion a asistir a los vienes de cafe que se realizan a las 8pm en el cafe punta de cielo que esta por el km 4.5 para platicar sobre temas de Tecnologias de informacion. Este viernes platicaremos algo acerca de la nube, que pasa con los servicios en la nube y que alternativas hay ademas de amazon para servicios en la nube.

  7. Administrator Dice:
    Usando: Mozilla Firefox 3.6.17 En: Ubuntu Linux

    Interesante, hoy ando ocupado pero intentare llegar

  8. marioly Dice:
    Usando: Mozilla Firefox 4.0.1 En: Windows NT

    Fernando: tal vez para ti como programador la elección es meramente filosofica (aunque no termino de entender muy bien por que se contraponen). Pero para una empresa o un banco, la elección distaría mucho de esto.

    David:
    Java no es un lenguaje 100% orientado a objetos, por practicidad me parece. En su apartado en wikipedia creo recordar viene algo sobre ello.

    Hace tiempo no tocaba Java y nerdeaba con otra tecnología más antigüita (vivo para complicarme), pero desde que me tocó hacer aplicaciones para Android lo recordé.

  9. YIsku Dice:
    Usando: Mozilla Firefox 3.0.17 En: Ubuntu Linux

    >>Entonces quise saber cuánta era la diferencia en rendimiento de JAVA contra .NET en Linux, el resultado es abrumador, al menos la implementación de mono hace que el código de los programas .NET se ejecuten mucho más rápido que los programas JAVA

    Si dices que java es lento porque es lento en tu laptop, no significa que sea lento. Puedes buscar pruebas donde contradicen tus resultados…

    >>ya que c# es sintacticamente igual que java,
    Parecido pero no igual.

    >>hace años que java se siente obsoleto, sigue sin tener dinámicos, genéricos y demás, cosa que c# implementa desde hace un buen de tiempo.

    Genericos esta desde la version 5 y vamos por la 7…. Y si java tambien le ha copiado algunas cosas a .net

    >>por filosofías que no llevan a nada, aun si, como plataforma .net es mejor…. xD
    .net no tiene tanto movimiento, primero se implementa en java luego en .net: spring, hibernate….

    >>David: Java no es un lenguaje 100% orientado a objetos, por practicidad me parece. En su apartado en wikipedia creo recordar viene algo sobre ello.

    Por ejemplo los nùmeros, existe la opcion de que sean primitivos lo cual en
    terminos de rendimiento es mejor que si fueran forzados a ser objetos siempre.

  10. Administrator Dice:
    Usando: Internet Explorer 9.0 En: Windows NT

    YIsku

    Mi laptop es una alienware con el procesador Intel Core I7

    Aunque el video en realidad lo grabe en un servidor DELL con procesasdores XEON

  11. 253c
  12. Yisku Dice:
    Usando: Safari 533.4 En: Mac OS X

    public class estress{
    public estress(){
    int condicion =5000;
    System.out.println(”Constructor”);
    for(int x=0;x

  13. Yisku Dice:
    Usando: Safari 533.4 En: Mac OS X

    Mi comentario no salio. El punto es que la prueba dice que eso no es cierto. Y que tal vez tengas otra jvm instalada, checa tu classpath.

Leave a Reply

Comment spam protected by SpamBam

0