Gracias por el A2A!
Desafortunadamente, como con la mayoría de los pronósticos futuros, se hace cada vez más difícil perforar cualquier grado de certeza demasiado lejos. Así que echemos un vistazo a lo que funciona a favor y en contra de que JavaScript permanezca en el back-end durante un período de tiempo considerable:
Trabajando para JavaScript:
- Sin JQuery, ¿puedo ser un diseñador web perfecto?
- ¿Cuál es la diferencia entre la solicitud Ajax y la solicitud XHR?
- ¿Es mejor aprender Python en línea o a través de un maestro? Si está en línea, ¿cuál es un buen sitio de tutoría?
- ¿Por qué PHP es un lenguaje de script seguro del lado del servidor?
- ¿Dónde debo comenzar la programación web y cuáles son los lenguajes más útiles para la programación web?
- Ubicuidad: JavaScript se usa en todos los navegadores (relevantes) y esto hace que sea muy fácil para los desarrolladores front-end saltar al desarrollo back-end sin necesidad de lidiar con conmutadores sintácticos.
- Adopción explosiva: muchas personas se han involucrado en la comunidad Node.js, ya sea como contribuyentes o dependientes, lo que le permite alcanzar rápidamente un grado respetable de ‘madurez de producción’.
- Efectividad: Node.js es impresionante porque ejecuta código de forma asincrónica, lo cual es una gran ventaja en comparación con otros marcos de servidores síncronos que actualmente compiten con él.
Trabajando contra JavaScript:
- Rendimiento: si bien Node.js ciertamente no es un holgazán en lo que respecta al rendimiento, existen soluciones que lo superan fácilmente: si el rendimiento absoluto se convierte en una preocupación significativa, Node.js puede caerse.
- Concurrencia: aunque Node.js puede configurarse de tal manera que pueda manejar la concurrencia, es bastante descuidado en comparación con otros idiomas como Go o Erlang que lo manejan con relativa facilidad.
- Pruebas: tal vez sea una molestia, pero dado el tipeo dinámico y los errores silenciosos, a menudo necesita pruebas aparentemente tontas; a veces parece que escribir / ejecutar pruebas lleva más tiempo que la compilación de código en otros idiomas.
En última instancia, Node.js es una herramienta muy poderosa porque hace que sea más fácil aprovechar el poder del desarrollo completo y permite a los desarrolladores “hacer una mierda” en la forma de “moverse rápido y romper cosas” que es popular en entornos ágiles. Node.js prospera en el entorno actual.
Pero ahora las personas son cada vez más conscientes del rendimiento, cada vez más se ocupan de cómo manejar mejor la escala, y pueden descubrir que su código Node.js les está costando con el tiempo las deudas técnicas que vencen. Si Node.js puede manejar estos dolores de crecimiento con mejores motores y bibliotecas, ¡genial! De lo contrario, las personas migrarán con el tiempo a los entornos que mejor se adapten a sus necesidades dadas las demandas del entorno que creamos en tecnología.
¿Te gusta mi respuesta? ¡Sígueme! ¿Tener preguntas? ¡Pregunta en los comentarios!