Según Google, el lenguaje de programación con mayor rendimiento es C++

Escrito por Rodrigo Arévalo Presedo, el 15 de junio de 2011
votarmeneala

Bjarne [Facilware]

Google ha elaborado un informe a partir de unas pruebas realizadas por ellos mismos para comparar el rendimiento de un total de cuatro lenguajes de programación : C++, Java, Scala y Go (el mismo lenguaje de programación que Google ha creado). Crearon con ellos un algoritmo de búsqueda y concluyeron que el que mejor rendía y además con diferencia era C++, teniendo por el contrario, la característica de ser el más complicado (o completo, según se mire) de ajustar para obtener el mejor rendimiento. Java es más sencillo pero por su semántica se hace más complicado detectar errores y Scala, según Google es el mejor en relación sencillez/rendimiento. Go, el lenguaje de Google, no destacó en nada pero también hay que tener en cuenta que es “el nuevo” en la familia, pues no lleva mucho tiempo desde que vió la luz.

Informe de Google en PDF

14 Comentarios en “Según Google, el lenguaje de programación con mayor rendimiento es C++”

  1. Juanma dice:

    Estoy de acuerdo con Google. De hecho, en primero de carrera nos dijeron en clase de programación: Aquí aprenderéis el lenguaje más complicado de los que os encontraréis en la vida, para luego dominar cualquier otro con suma facilidad.

    • Multi dice:

      C++ el más complicado? joder joder… te puedo hacer un listado de lenguajes más complicados y más feos:
      iOs
      Prolog
      Lisp
      R

      Me dejo muchos a lo largo de “mi carrera”. C++ es ideal para iniciarse pienso yo. Luego vas a Java y ves como todo ya estaba hecho xD.

      • Rodrigo Arévalo Presedo dice:

        Ensamblador es un lenguaje ? He oído algo de eso, como que era el infierno…

        • GpoNsU dice:

          Si, ensamblador es un lenguaje de bajo nivel, mas cercano al lenguaje maquina que los lenguajes de alto nivel que están comentando por ahí arriba.

          Yo coincido con Multi, C++ es un lenguaje muy sencillo, perfecto para empezar. De todos modos ser mas eficiente que java…. no es un gran merito, tendré que ver los otros dos lenguajes que han analizado, pero vamos, tampoco me parece una gran comparativa.

          Un saludo!

      • Juanma dice:

        De hecho, algunos compañeros de telecomunicaciones que comenzaban con Java, venían a pedirnos ayuda (ambas carreras estan en la misma facultad).

        Mi carrera ‘informática’ es mucho menor que la vuestra, obviamente, pero todavía no me he encontrado ninguno tan dinámico, potente y dificil como C++ ni tan pesado como el esamblador. Deben de haber muchos más en esa lista, aunque mi profesor si consiguió su objetivo: ‘acojonarnos vivos’ a toda los compañeros de clase.

        Con respecto a lo de cobol, no se si será ese mismo, pero una vez me comentaron que existe un lenguaje que predomina en los bancos y que sólo muy pocas personas en el mundo saben programar con él y ganan una pasta por ser tan pocos.

        Un saludo!

        • KLap dice:

          Ese es ese. Y no habéis nombrado ADA o Smalltalk o Perl…

          Por si tenéis curiosidad aquí http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html podéis encontrar una gráfica de la evolución en uso de los distintos lenguajes. De momento el rey en 2011 sigue siendo Java.

          Saludos.

        • multi dice:

          Hola Juanma

          Sí, el de los bancos es Cobol, que solo lo sepan pocas personas en el mundo… mmm… dejemoslo en que pocas personas lo estudian por que es un lenguaje muy antiguo y ya no se ve en las universidades.
          Si eres un estudiante de 1º y dices que C++ es complicado, es comprensible. Si eres un estudiante de 5º y dices que C++ es complicado es que tienes un problema jejeje.
          Yo se, creo, que estas en el primer caso, si no recuerdo mal has comenzado hace poco la carrera por lo que es normal que el primer o primeros años te parezca muy complicado C++ pero si te sirve de ayuda te diré que tranquilo, los hay peores :P y cuando acabes la carrera C++ te parecerá sencillo.

          Por otra parte, como dice Klap, Java sigue siendo el “top” que diría Mourinho. ¿por que? Bueno… quizás por poder crear de una forma más o menos sencilla una interfaz que a su vez es multiplataforma? Por su programación modular? Por que si? Acabando la carrera te diría que encuentro mucho más sencillo C++ pero sería incapaz de hacer una aplicación completa (con entorno visual) sin usar Java, me sería mas sencillo con este último.

          cout << "Saludos crack" << endl;

          • KLap dice:

            Para mi Java es mucho más fácil que C++.

            C++ tiene la ‘pega’ del manejo, al igual que C, de la memoria. El tema de las clases es análogo a Java y por lo tanto es sencillo acostumbrase en ese aspecto, lo más costoso para mi es justamente el manejo de punteros a zonas de memoria. Java cuenta con el Garbage Collector que te hace toda la gestión automáticamente (perdiendo eficiencia con respecto a C o C++, si lo haces bien claro) pero en C++ tienes que comértelo y bebértelo tú. O al menos así ha sido cuando he tenido que programar a lo largo de la carrera.
            Que si se te quedan punteros descolgados, que si hay que desrreferenciarlos, el páso de parámetros por referencia, la reserva dinámica y liberación…

            Vamos que a un programador de Java le hablas de malloc, delete, release, &… y dirá ¿eso qué es?

            Saludos.

          • GpoNsU dice:

            Ni zorra tenéis ninguno! Todo lo que hagáis vosotros en Java y C++ lo hago yo con 4 lineas de prolog!! Novatos!! xd

            Un saludo!!

          • Juanma dice:

            La carrera la tuve que dejar (por problemas económicos) con algunas asignaturas en tercero. C++ en si, una vez que le tomas el manejo el primer año, está chupado. A lo que me refiero es que una vez que dominas bastante ese lenguaje, los demás no tienen ninguna complejidad, al menos los pocos que yo he tocado y sobre todo, los lenguajes interpretados.

            Estos útlimos, salvo una que otra salvedad, no son dificiles de entender (simplemente acostumbrarse a ellos). O al menos ese es mi caso.

            Y si, Java está muy extendido gracias a su facilidad. Aunque esta quede lejos de los términos optimización y rendimiento.

            Klap, personalmente, prefiero ser yo quien controle a mi programa. No sé, es como montar tu propia distribución Linux, la controlas tú. C++ te permite eso, por eso me encanta, además de que es supercompleto.

            Por cierto Multi, no declaraste la iostream para poder hacer ese cout, nos veremos en Septiembre xDD.

          • KLap dice:

            jajjajaja GPoNsU!! Yo sé de uno que no lo diría en broma xDDD y si por una de aquellas metiese 5 lineas, que temblasen Windows, Mac y Linux :P

            Juanma, tienes razón en que es mejor controlar lo máximo tu programa, pero bueno esto es lo de siempre, es comparable al que se compra un MacPro para ver el correo y el Facebook, son ganas de gastar el dinero. Pues lo mismo, depende de qué tipo de software vayas a desarrollar, puede ser mejor ahorrarte tiempo de gestión de memoria cuando con el Garbage Collector te sobraría. Al igual que NUNCA hagas un software que gestione tareas críticas en Java o estarás muerto xD

            Supongo que sabes a lo que me refiero.

            Multi ahí te ha pillao jajjaja

          • multi dice:

            He quedado como un aprendiz de hacker! :p
            Saludos! jejeje

    • Multi dice:

      “Cobol”, otro lenguaje no se si complicado… pero sí fuera de casi todas las líneas académicas y solo en uso en aplicaciones de Bancos por ejemplo.

  2. Katalan91 dice:

    Si una vez que uno le pilla el truco a las “clases” es una delicia de lenguaje.

Deja un comentario