No creo que el éxito de Java se pueda atribuir a ningún marco en particular, creo que se trata de que Java solo proporcione todo .
Creo que Java es en gran parte por sí mismo si quieres:
- Un buen lenguaje OOP estáticamente tipado.
- Un tiempo de ejecución confiable, rápido y multiproceso.
- Un entorno totalmente gestionado.
- Una biblioteca para casi todo.
Creo que si quieres esas 4 cosas, ¿qué más hay en realidad? Hace unos años, habría dicho C # y .NET, pero tan bueno como es, mi experiencia esta semana es que realmente no es tan “administrado” como pensaba. En Java, un bloqueo significa un buen seguimiento de la pila y una visita guiada del problema. En C # y .NET a menudo es lo mismo, pero a veces también obtendrá:
- Cómo hacer un sitio web para que la gente vea películas
- ¿Por qué es tan difícil aprender Spring Framework?
- ¿Cuánto tiempo más serán necesarias las hojas de estilo reset.css?
- Cómo agregar un valor de la vista de lista a la base de datos al hacer clic en el botón en WPF
- ¿Cuánto tiempo tarda un rastreador web en explorar Internet?
Error: DEP0001: Error inesperado: Excepción de HRESULT: 0x8103010D
O algo así, sin rastro de pila, nada.
He estado escribiendo más C # en las últimas semanas que Java, y veo cada vez más que Java es un verdadero entorno administrado, y .NET no lo es.
.NET y C # son geniales, realmente geniales, pero no ofrecen la misma experiencia que Java y JVM.
Entonces, para mí, las razones del éxito de Java es que apenas tiene un competidor, el más cercano es C # /. NET, pero incluso eso no puede ofrecer la experiencia completa de Java al proporcionar un tiempo de ejecución administrado, lo que creo que es realmente importante para una gran cantidad de software para grandes empresas.
Las ofertas como Python, Ruby, JavaScript, etc. a veces pueden ofrecer algunos de los 4 puntos que enumeré anteriormente, pero no se me ocurre nada que realmente pueda tocar Java para la programación de “grandes empresas”, donde tienes grandes equipos de talentos mixtos, trabajando en grandes proyectos.