He estado programando durante algunos años y comencé en Java, y en mi época he encontrado muchas fuentes diferentes que afirman que Java es un lenguaje inferior de alguna manera u otra. Soy consciente de que cada idioma tiene sus fortalezas y debilidades, pero muchas cosas que he leído sobre Java parecen estar desactualizadas.
La razón más citada para que Java sea inferior es que es mucho más lento que otros lenguajes compilados de forma nativa, como C ++, por ejemplo. Mucha gente critica al diseñador de juegos Notch (que desarrolló Minecraft) por usar Java debido a su falta aparente en el departamento de rendimiento. Sé que Java era mucho más lento en el pasado, pero ha habido muchas mejoras desde entonces, especialmente la compilación JIT.
Me gustaría obtener algunas opiniones objetivas de Java como lenguaje hoy. Así que mi pregunta tiene 4 partes.
-
Rendimiento.
a. ¿Cómo se compara la velocidad de Java de hoy con C ++?
b. ¿Sería posible crear un título AAA moderno utilizando Java?
c. ¿En qué áreas específicamente es Java más lento que C ++, en todo caso? (es decir, cálculos numéricos, gráficos, o simplemente todo)
-
¿Java ahora se considera un lenguaje compilado o un lenguaje interpretado?
-
¿Cuáles son algunas deficiencias importantes de Java que se han abordado desde los primeros días?
-
¿Cuáles son algunas deficiencias importantes de Java que aún no se han resuelto?
Editar:
Solo para fines de aclaración, no estoy haciendo este Java vs C ++, obviamente, en promedio, c ++ será un poco más rápido que Java. Simplemente necesito algo con lo que comparar Java en términos de madurez como lenguaje en este momento. Como c ++ ha existido desde siempre, pensé que sería un buen punto de comparación.