¿Node.js ya está disminuyendo?

Tal vez tu pregunta esté relacionada con publicaciones recientes como:

  • Jefe de proyecto TJ Fontaine está fuera
  • Despedida Node.js

Más globalmente, con el zumbido, algunos desarrolladores consideraron node.js como algo que podría ser la mejor y única solución para resolver casi todo. Al final, tienen que descubrir en algún momento que otras tecnologías pueden ser más maduras o más adaptadas para sus proyectos específicos.

Tal vez lo preguntas porque io.js dejó de temer alguna división potencialmente peligrosa en la comunidad.

¡Ahora!

Con respecto a ese:

  • El nuevo motor JS de Oracle para Java (Nashorn) se ha hecho compatible con node.js desde el inicio a través de Avatar.js (consulte Node.js y io.js en Java)
  • Las alternativas como Wakanda mejoran su compatibilidad con node.js en cualquier versión (y tiene un proyecto experimental de nodo wakanda)
  • El reciente IDE de Internet de las cosas de Intel presenta el tipo de proyecto node.js para ejecutarse en dispositivos iot (consulte Presentación de la Edición Intel® XDK IoT – Javascript para Internet de las cosas)
  • io.js , la bifurcación muy activa de node.js, como se unió al nodo.js original a través de la fundación nodejs (ver io.js se une a la Fundación Node.js)
  • Intuit y Paypal formaron la coalición EnterpriseJS (ver la nueva coalición Node.js destaca a las empresas)
  • Incluso Microsoft , en lugar de promover su propia plataforma SSJS con API patentadas, después de ayudar al equipo de nodo para el soporte de Windows, recientemente inició una bifurcación node.js con su motor JS en lugar de Google V8 (consulte Microsoft Forks Node.js para admitir ARM)

El futuro cercano de node.js parece ser más el comienzo de la misma competencia que tenemos en el lado del cliente, que el comienzo de un declive.

Incluso si había sido doloroso al principio, la competencia JavaScript / HTML5 del lado del cliente ha sido muy productiva en innovación y desempeño

A diferencia del lado del cliente, no tenemos que esperar a que se cree el W3C, WHATWG o ECMA ni esperar a que los líderes de proveedores formen parte de ellos.

El trabajo de CommonJS se detuvo, pero ahora tenemos esta Fundación Node.js con representantes ya a bordo de:

  • Joyent
  • IBM
  • Microsoft
  • SAVIA
  • Paypal

pero también más recientemente

  • Google
  • Intel
  • Famoso
  • Ve papi
  • Océano digital
  • Groupon
  • Sombrero rojo
  • Yahoo!

Como esta base se acaba de crear, no me sorprendería que Mozilla, Google (editar: hecho) y Oracle finalmente se unan a ellos (y quién sabe … tal vez también Apple).
Tenga en cuenta también que:

  • Adobe y ahora Microsoft están apoyando la coalición EnterpriseJS .
  • La Fundación Node.js se convierte en un Proyecto Colaborativo de la Fundación Linux ( ver: La Fundación Node.js promueve la colaboración comunitaria, anuncia nuevos miembros y gobierno técnico ratificado)

JavaScript mismo muestra un futuro brillante en su evolución con cosas como

  • ES6 Iteradores y generadores,
  • ES7 asíncrono / espera,
  • WHATWG Fetch Standard,
  • WHATWG Streams Standard,
  • JavaScript paralelo,

Si echamos un vistazo a las tendencias de trabajo de node.js, parecen ser casi inexistentes en comparación con otra. En realidad, node.js está comenzando a surgir tímidamente

Ahora, mirando al porcentaje relativo de crecimiento, verá que no solo node.js es el que tiene el mayor porcentaje de progresión, sino que cada vez que comenzó a disminuir, finalmente volvió a crecer un poco más tarde.

Vea las últimas actualizaciones allí (puede probar con otras habilidades):
Tendencias de trabajo de php, ruby, rails, python, java, scala, erlang, .NET, node.js

Nota:
Si observa las 10 principales tendencias laborales, verá HTML5 (1º), MongoDB (2d) y jQuery (8º) que, al igual que node.js, se basan en JavaScript. Entonces, incluso si no termina con un trabajo de node.js, usarlo le hará aprender JavaScript, que seguirá siendo muy valioso.

Node.js todavía es una tecnología joven, y aunque algunos de sus casos de uso podrían haberse invalidado (al menos parcialmente), todavía tiene nuevos casos de uso regularmente y luego todavía tiene una cuota de mercado que puede conquistar.

Entonces, sí, node.js & npm probablemente verá muchos cambios ,
pero deberían resultar en grandes mejoras para toda la comunidad.

Mi conclusión es que no, Node.js no está disminuyendo

Ahora está creciendo a un nivel más alto , más maduro

Si desea leer más sobre este tema, lo invito a que lea este artículo: ¿Por qué Node.js está llegando a la cima en los mercados empresariales?

PD: Todos podemos contribuir a mejorar las plataformas web y los estándares web. Los invito a echar un vistazo a esta otra respuesta que escribí: ¿Qué es una función anónima en JavaScript? de lo cual invito a los lectores a votar por una mejor inspección de los ámbitos de cierre de JavaScript en la herramienta para desarrolladores 😉

En el momento de la concepción, Nodejs se enfrentó a una gran resistencia por parte de programadores como yo, que sentían que el servidor necesitaba lenguajes de programación reales como PHP y Ruby y que JavaScript no era ninguno de esos.

Sin embargo, ahora que está aquí, Nodejs es lo último que desaparecerá del mercado, al igual que PHP está aquí para quedarse .

Esto se debe a la razón por la que muchas empresas han adoptado Nodejs como un “lenguaje” de back-end para sus interfaces móviles y web.

Además, han surgido muchos marcos para facilitar aún más el trabajo con Node, como Expressjs , Sails y Meteorjs , que tienen comunidades muy capaces y fuertes detrás de ellos que no permitirán que Nodejs retroceda.

Es posible que hayan pasado los días de gloria , y eso sucede con cualquier otra tecnología. Al igual que la pompa y el color de una boda muere y las personas se ponen manos a la obra para enfrentar los problemas reales del matrimonio.

Pero es la habilidad de aprender en 2017 porque le brinda la oportunidad de trabajar tanto en aplicaciones web como en aplicaciones móviles. Y las empresas se mueren por contratar desarrolladores experimentados de Nodejs.

Creo que a medida que la exageración inicial ha expirado, y a medida que la gente se ha movido del básico “es muy fácil escribir un sitio web que sea de alto rendimiento” a darse cuenta de que en realidad la naturaleza no bloqueante de un solo subproceso es solo parte de La solución a su escalabilidad proclamada en muchos escenarios, puede que hayamos alcanzado el ‘Nodo pico’.

Hay nodos positivos y negativos en Node, como con cualquier lenguaje o marco.

  • Si necesita algo más que una aplicación trivial, debe seguir exactamente los mismos tipos de arquitectura que han estado en uso durante algún tiempo en otros idiomas. Node no proporcionará escalabilidad repentinamente con solo poder ofrecer un solo subproceso sin bloqueo.
  • Por ejemplo, normalmente tendrá que descargar llamadas intensivas de cómputo, llamadas externas o procesos de larga ejecución a través de un Bus de servicio o una Cola de mensajes a procesos de trabajo escalables (a veces denominados ahora Micro Servicios).
  • A medida que las personas intentan usar Node en escenarios empresariales reales, ahora hay un elemento de intentar ‘reinventar la rueda’, agregando paquete tras paquete para parchear la funcionalidad que ya existe en lenguajes como Java, .Net, Ruby y hasta cierto punto PHP.
  • Cuando realmente compara el rendimiento de Node para decir un servicio de API web basado en OWIN, la API web realmente puede igualar o superar a Node mientras ofrece una mayor funcionalidad integrada en un lenguaje fuertemente tipado.
  • Este crecimiento en el número de paquetes, etc., y la fragmentación de la comunidad Node, por supuesto, es de esperar, de la misma manera que hay fragmentación y una corta vida media para los marcos de JavaScript y las bibliotecas del lado del cliente.
  • El concepto de marcos de JavaScript isomórficos que evolucionaron alrededor de Node también está comenzando a verse como un enfoque de yeso adhesivo a corto plazo con un valor limitado, como es el intento de atornillar una escritura fuerte en forma de TypeScript / AtScript, etc.
  • Los desarrollos para API de servidor como Swagger, que proporcionan metadatos para una API REST que permite generar clientes, y son independientes del lenguaje, permiten la integración y el uso sin problemas de idiomas adaptados a tareas específicas. Eso podría incluir una aplicación móvil nativa de C ++, un cliente web de JavaScript y un back-end Java / .Net, o Erlang, o uno de muchos otros que están optimizados para el Dominio del problema. Los modelos se sincronizan automáticamente.
  • A medida que se da cuenta de que las arquitecturas basadas en Node en realidad están tratando de lograr características que los lenguajes fuertemente tipados de grado empresarial han tenido durante más de una década, con soluciones maduras y optimizadas para muchos problemas, se hace evidente para más personas que Node no es una solución única a todos los escenarios (y tampoco lo es ningún otro idioma).
  • Sin embargo, debe tenerse en cuenta que Node, con su biblioteca C subyacente que está envuelta por JavaScript, es muy adecuado para algunos escenarios; impulsado por eventos, simple solicitud-respuesta desde un caché, como un tablero de instrumentos, una aplicación de chat o un centro de notificaciones (piense en Twitter), entonces Node es en realidad una muy buena opción, pero no exclusivamente, entre los muchos otros enfoques, que experimentaron Software Los arquitectos se darán cuenta; Un ejemplo sería SignalR, para una comunicación bidireccional en tiempo real altamente escalable entre el cliente y el servidor.
  • Debido al impulso de entusiasmo y entusiasmo detrás de los marcos de JavaScript de código abierto, y la cantidad de titulares que genera, compañías como Microsoft, Oracle, etc., lo adoptan para vincular los proyectos resultantes a sus propios entornos propietarios donde tienen Un flujo de ingresos. Por ejemplo, a Amazon, Microsoft e IBM no les importa lo que usen siempre que alojen en sus plataformas en la nube, y su ‘soporte’ se usa para perpetuar el mito de que Node es en realidad un concepto revolucionario que reemplazará el ‘legado’ ‘idiomas.

Olvidé agregar en mi publicación inicial, que Bower ya se enfrenta a la competencia de jspm. Una semana es mucho tiempo en JavaScript.

Actualización 2015 : Observo que se ha utilizado un gráfico en otra respuesta que muestra tasas de crecimiento sorprendentes para los trabajos de Node.js anunciados en el sitio web de Indeed. Eso parece bastante impresionante …

… hasta que te des cuenta, eso es en realidad un poco falso, ya que es relativo a una base que efectivamente era cero . Cambiar exactamente el mismo gráfico para mostrar datos absolutos cuenta una historia muy diferente:

Al observar el porcentaje de ofertas de trabajo coincidentes, parece que, de hecho, Node.js es, efectivamente, irrelevante: consejo: la línea naranja superior es para PHP, la línea naranja pálida inferior oculta entre scala, erlang, rails, es Node .js.

Para hacerlo más claro e incluir el propio JavaScript (node.js es la línea verde):

Principales tendencias laborales

  1. HTML5
  2. MongoDB
  3. iOS
  4. Androide
  5. Aplicación movil
  6. Marioneta
  7. Hadoop
  8. jQuery
  9. PaaS
  10. Medios de comunicación social

Mi punto sobre esto es que las personas deben tener cuidado de no caer en la exageración que rodea a Node.js.

Actualización 2018:

Creo que debería agregar tres puntos, una mezcla de pros y contras para Node.

a) El avance inicial de los nodos fue IO sin bloqueo. Desde entonces, muchos otros lenguajes convencionales han adoptado el enfoque asincrónico que Node fue pionero. Como mencioné en mi respuesta inicial, Node no es la única herramienta que debe considerarse, pero es muy apropiado en ciertas circunstancias. Posteriormente, Microsoft lanzó .Net Core con asíncrono / espera de alto rendimiento y la capacidad de usar fibras (Coroutines), y Google lanzó posteriormente Go, que también ofrece concurrencia a través de Coroutines (que han llamado Goroutines). Recomiendo investigar estos enfoques (Coroutine – Wikipedia)

b) El advenimiento de la computación sin servidor (por ejemplo, Google Cloud Platforms Cloud Functions, Azure Functions de Microsoft y AWS Lambda) complementa muy bien a Node y puede simplificar la implementación de la escala de una API de Node que también requiere flujos de trabajo intensivos en cómputo.

c) El aumento de la representación del lado del servidor de las interfaces de usuario basadas en JavaScript (junto con las aplicaciones web progresivas), por ejemplo Next.js para React y Nuxt.js para Vue, hace de Node una opción atractiva para este enfoque específico de desarrollo web.

Mi evaluación original sigue en pie: el nodo es muy adecuado para algunas aplicaciones, pero no es el único enfoque que se puede utilizar. El uso parece haberse estancado, con la llegada de idiomas como Go.


Fuentes: 26 años de experiencia en la industria de TI, contribución a varios marcos JavaScript de código abierto, 16 años de experiencia en consultoría en desarrollo de software empresarial para bancos, compañías de seguros, atención médica, defensa, comercio electrónico y publicación.

Sí, creo que a medida que la exageración inicial ha expirado, y a medida que la gente se ha movido del básico “es muy fácil escribir un sitio web que sea de alto rendimiento” a darse cuenta de que en realidad la naturaleza de Node de un único subproceso es Como parte de la solución a su escalabilidad proclamada en muchos escenarios, es posible que hayamos alcanzado el ‘Nodo pico’.

Hay nodos positivos y negativos en Node, como con cualquier lenguaje o marco.

Si necesita algo más que una aplicación trivial, debe seguir exactamente los mismos tipos de arquitectura que han estado en uso durante algún tiempo en otros idiomas. Node no proporcionará escalabilidad repentinamente con solo poder ofrecer un solo subproceso sin bloqueo.

Por ejemplo, normalmente tendrá que descargar llamadas intensivas de cómputo, llamadas externas o procesos de larga ejecución a través de un Bus de servicio o una Cola de mensajes a procesos de trabajo escalables (a veces denominados ahora Micro Servicios).

A medida que las personas intentan usar Node en escenarios empresariales reales, ahora hay un elemento de intentar ‘reinventar la rueda’, agregando paquete tras paquete para parchear la funcionalidad que ya existe en lenguajes como Java, .Net, Ruby y hasta cierto punto PHP.

Cuando realmente compara el rendimiento de Node para decir un servicio de API web basado en OWIN, la API web realmente puede igualar o superar a Node mientras ofrece una mayor funcionalidad integrada en un lenguaje fuertemente tipado.

Este crecimiento en el número de paquetes, etc., y la fragmentación de la comunidad Node, por supuesto, es de esperar, de la misma manera que hay fragmentación y una corta vida media para los marcos de JavaScript y las bibliotecas del lado del cliente.

El concepto de marcos de JavaScript isomórficos que evolucionaron alrededor de Node también está comenzando a verse como un enfoque de yeso adhesivo a corto plazo con un valor limitado, como es el intento de atornillar una escritura fuerte en forma de TypeScript / AtScript, etc.

A medida que se da cuenta de que las arquitecturas basadas en Node en realidad están tratando de lograr características que los lenguajes fuertemente tipados de grado empresarial han tenido durante más de una década, con soluciones maduras y optimizadas para muchos problemas, se hace evidente para más personas que Node no es una solución única a todos los escenarios (y tampoco lo es ningún otro idioma).

Sin embargo, debe tenerse en cuenta que Node, con su biblioteca C subyacente que está envuelta por JavaScript, es muy adecuado para algunos escenarios; impulsado por eventos, simple solicitud-respuesta desde un caché, como un tablero de instrumentos, una aplicación de chat o un centro de notificaciones (piense en Twitter), entonces Node es en realidad una muy buena opción.

Debido al impulso de entusiasmo y entusiasmo detrás de los marcos de JavaScript de código abierto, y la cantidad de titulares que genera, compañías como Microsoft, Oracle, etc., lo adoptan para vincular los proyectos resultantes a sus propios entornos propietarios donde tienen Un flujo de ingresos. Por ejemplo, a Amazon, Microsoft e IBM no les importa lo que usen siempre que alojen en sus plataformas en la nube, y su ‘soporte’ se usa para perpetuar el mito de que Node es en realidad un concepto revolucionario que reemplazará el ‘legado’ ‘idiomas.

Olvidé agregar en mi publicación inicial, que NPM ya enfrenta competencia de jspm. Una semana es mucho tiempo en JavaScript.

Fuentes: 26 años de experiencia en la industria de TI, contribución a varios marcos JavaScript de código abierto, 16 años de experiencia en consultoría en desarrollo de software empresarial para bancos, compañías de seguros, atención médica, defensa, comercio electrónico y publicación. Han trabajado para IBM, Avanade, Microsoft.

Contrata a Nodejs Developers

Empresa de desarrollo de Nodejs

Siendo uno de los proveedores pioneros de servicios de desarrollo de aplicaciones web y móviles de Node.js, en Inwizards estamos en el negocio de entregar aplicaciones exitosas. Ya sea que se trate de soluciones de desarrollo de módulos y módulos o de un requisito de desarrollo de aplicaciones, hemos atendido los requisitos de los módulos de pequeñas y grandes empresas.

Lo estamos haciendo a un costo asequible.
Hazme un ping o contáctame en este enlace

Para contactar :- Empresa de desarrollo web, India

Gracias y Saludos

Anuj

Sip.

Así es Javascript.

Y Java

Y Python.

Pronto, todos los lenguajes de programación estarán muertos. Ya no estaremos programando. Lo siento mucho; usted y millones de personas perderán sus trabajos.

En una nota más seria: No. No se está muriendo ningún lenguaje o marco. (El nodo no es ninguno de esos). Ganan y pierden popularidad con un idioma o un marco que con frecuencia se apodera del otro, eso no significa que estén ‘muriendo’. PHP puede no ser la opción más popular en este momento, pero no está muerto. Todavía lo usan muchas, muchas personas y empresas. Eso también es cierto sobre Java y cualquier otro idioma que la gente diga que está ‘muriendo’.

Nodo está en su etapa inicial en este momento. Está empezando a ganar popularidad y aceptación. Permítame darle una lista de compañías que recientemente han movido su stack total o parcialmente a Node. No harían eso si Node se estuviera muriendo, ¿verdad?

  1. LinkedIn
  2. Netflix
  3. New York Times
  4. Medio
  5. Groupon
  6. PayPal

Estos son solo los grandes nombres. Dios sabe cuántas startups y pequeñas empresas también lo están utilizando. No tengo los números actuales, pero su popularidad aumentó entre 2011 y 2014. Es posible que haya bajado recientemente, pero eso no implica nada. Podría despegar de nuevo mañana. Node es demasiado joven para estar ‘muriendo’, en mi opinión.

Es imposible de predecir. Pero el bombo se ha estabilizado definitivamente.

Veo muchas discusiones negativas sobre node.js y cuán horrible es javascript. Tan pronto como empiezas a hablar sobre el nodo, todo el mundo salta a desarrollar “sitios web” con él.

Node no es una herramienta para construir sitios web, es para construir “aplicaciones de red”.

Conozco los conceptos básicos de ASP, Drupal / WordPress y Rails: estas herramientas están diseñadas para desarrollar sitios web, desde autenticaciones hasta formularios, sesiones, plantillas, cargas de archivos, procesamiento de imágenes, almacenamiento en caché, ORM y seguridad. Todo lo que necesita para crear un sitio web moderno totalmente funcional está integrado en estas herramientas. Si desea crear un sitio web genérico, elija uno de estos.

Node no tiene estos incorporados y es un dolor en el a ** para comprender, comparar módulos y finalmente instalarlos e implementarlos. Las tareas básicas que hubieran tardado 10 minutos en rails / drupal tardarían unos días en implementarse en el nodo y probarse a fondo.

No compare node.js con rieles.

No tiene ningún sentido usar node.js solo porque es rápido, cuando almacena en caché y coloca nginx / etc. Además de cualquier otro marco, es igualmente rápido.

Déjame decirte dónde encuentro el nodo realmente útil.

Senario 1
Hace unos meses estaba en un equipo trabajando para una de las principales empresas de electrónica (mi empleador era vendedor). Estaban creando una aplicación de transmisión de música. Usamos node.js en toda la pila: ejecutamos varias instancias para descargar contenido de diferentes fuentes, analizar y almacenar en CDN. Luego, otra aplicación de nodo tomaría esos y los presentaría a la sección de administración. Otra aplicación de nodo serviría los contenidos a los dispositivos. Pocas aplicaciones más para otras tareas. Estas aplicaciones funcionan por sí solas y el sistema no se rompe incluso si algunos de los “microservicios” fallan. Es muy fácil dividir los equipos de desarrollo, administrar, probar, depurar y monitorear. Podríamos escalar selectivamente un “servicio” particular cuando sea necesario. Hay otras tecnologías que ofrecen características similares, pero piense en lo fácil que es obtener / entrenar a los desarrolladores de node.js (grupo de talentos masivos) y qué tan fácil de implementar (sin configuraciones complicadas) y cómo consume menos recursos de computadora node.js (extremadamente servidores más baratos).

Senario 2
Actualmente estoy trabajando en un servidor privado que mantiene conexiones persistentes a miles de dispositivos móviles a través de WebSockets. Actúa como un intermediario delgado para que otros servidores se comuniquen con los dispositivos conectados. Con módulos maduros como socket.io, es muy simple hacer este trabajo. Node.js necesita menos de 100 MB para mantener ~ 350 conexiones activas. El servidor es 100% sin estado, ejecutamos varios clústeres en una sola máquina para escalar (también es muy fácil de distribuir en varias máquinas) sin ningún cambio en la base de código simple. Node.js hace que este tipo de cosas complicadas sea tan simple. Una vez más, esto también se puede lograr con otras tecnologías, pero no tan rápido y barato como node.js.

Además, el motor sólido en el que funciona (v8) está construido y mantenido por Google, que también está probado en batalla y es un ganador comprobado. No soy un desarrollador técnicamente competente, pero sí sé cómo enviar cosas y cómo hacerlo rápido. Siento que es realmente fácil resolver problemas relacionados con la red teniendo en cuenta el costo y la velocidad del nodo.

Es como el avión Concorde, no construido para todos los casos de negocios. Los desarrolladores ya están entendiendo esto y eligiendo sabiamente.

No hay certezas, pero si lo hace, no será por razones técnicas.

Lo importante de los nodos y JS es que el lenguaje en sí mismo está definiendo el cambio en lugar de la infraestructura (es decir, los navegadores y las empresas que invirtieron en ellos; solían tener el interés de control y retrasaron el desarrollo web durante años, hasta aproximadamente 2012) e hicieron cosas como Flash necesario IMO).

La compilación cruzada incrustada en la cadena de herramientas cambió esto. Escribe ES6 o ES7 ahora aunque ninguno de los dos es totalmente compatible en todos los tiempos de ejecución de JS, por lo que el entorno de desarrollo para cosas como el nodo está avanzando con esteroides, impulsado por el código abierto que corrige las incompatibilidades del navegador y / o su implementación tardía de funciones.

Dicho esto, una mejor respuesta a la pregunta podría ser ¿qué puede reemplazar a node y JS?

Por el momento, nada. WebAssembly está en el horizonte. Parece adecuado para juegos y plataformas de medios a medida (el segundo bit es el importante, como veremos a continuación) en lugar de páginas web y SPA. Podría reemplazar a JS por méritos técnicos en el futuro (la mayor parte de la popularidad de JS podría ser que es la única opción para el front-end y WebAssembly rompe este dominio). El tiempo dirá.

Otra pregunta más profunda que nos da una mejor respuesta al OP podría ser ¿qué está ralentizando la web y el desarrollo web?

Hemos pasado de complementos propietarios a una web más abierta en términos de desarrollo, pero ahora estamos limitados por algo peor que los complementos; ‘jardines amurallados’ y la ruptura del hardware web en un sistema de dos niveles.

Muy pocas compañías (Google, Facebook y otras) mantienen y controlan los datos, y aunque las API comenzaron como una buena idea, ahora realizan con mayor frecuencia una función de control de datos. Big Data (o para usar su forma técnica sin palabra de moda, aprendizaje automático ) es la salvación aquí; extraer sus propios datos no estructurados a través de elementos como el raspado y omitir las API de gatekeeper existentes y sus muros.

Tenemos personas quejándose del potencial para una web de dos niveles, pero esto ya ha sucedido a través de CDN, cuya propiedad ya ha puesto las grandes posiciones de los jugadores en piedra. Esta es una situación realmente mala para una web gratuita, pero no se informa en gran medida; Los canales de transmisión de CDN se están convirtiendo rápidamente en ‘la nueva televisión’ y están absorbiendo los ingresos publicitarios de calidad (es decir, lucrativos) de la ‘web gratuita’.

Los ingresos publicitarios para apoyar una prensa gratuita independiente en la web están cayendo como una piedra, dejándonos con sitios de clickbait de celebridades sin contenido y noticias falsas sin periodismo.

Este es un problema mucho más serio para los desarrolladores web que una pérdida de nodo, ya que eventualmente matará el código abierto a través de plataformas web privadas y cerradas (cuyo ensamblaje web IMO parece ser el habilitador, junto con la infraestructura de datos de soporte a través de CDN existentes).

Razones para abandonar Node.js a principios de 2017:

  • Callback hell y siempre pensando en escribir código asíncrono es como trabajar con punteros en C, le quita su productividad (y su vida).
  • Debido al primer punto, Node.js tiene fallas de diseño y más de 20 años en el futuro, la gente seguirá discutiendo sobre “¿Es Node una buena opción para el problema XY?”.
  • Cualquier proyecto que sea más complicado que una demostración de autenticación será demasiado complejo al final.
  • Los nuevos estándares EcmaScript que pretendían arreglar las partes malas de Javascript hacen que el lenguaje sea tan complejo como C ++. Tendrá n + 1 cosa para resolver un problema simple, pero al final del día, su productividad se verá afectada (al igual que en el punto 1). Pero en C ++ 11, puede descartar el viejo estilo de codificación cuando enseña el lenguaje, simplemente no enseñó C primero o comienza con el vector cuando enseña matrices. No puede hacer esto en Javascript, la gente todavía necesita aprender la antigua declaración de función y usar la declaración de retorno, porque esto es más fácil de entender que las funciones de flecha … En C ++ 11, la sintaxis vectorial más reciente simplifica su productividad, no lo contrario. En Javascript, cada nueva adición de biblioteca en los estándares de ES hace que sea más difícil de entender el lenguaje, porque trata de dar soluciones arbitrarias para un hackjob de 2 semanas. Prepárense, cuando los tipos estáticos se vuelven una cosa: sirisian / ecmascript-types
  • La falta de bibliotecas maduras que se necesita para convertirse realmente en un software empresarial, por ejemplo, no existe un ORM estándar de la industria para bases de datos RDBMS (MySQL, Postgres). Mi voto es escribir consultas crudas, pero las personas al principio realmente necesitan una solución que sostenga sus manos para no joder las cosas demasiado pronto, demasiado mal. Es por eso que un ORM estándar de la industria o un marco completo de pila es para No por la velocidad, sino por haber acordado mutuamente las mejores prácticas en la comunidad (y ayuda para ese problema). A partir de febrero de 2017, la declaración oficial del canal de la Fundación Node.js en Medium es no usar Node.js con RDBMS :

“Usar Node.js con una base de datos relacional sigue siendo bastante difícil (ver más abajo para más detalles). Hazte un favor y elige cualquier otro entorno como Rails, Django o The Official Microsoft ASP.NET Site MVC si estás tratando de realizar operaciones relacionales “.

Fuente: Fundación Node.js en Medio

De Verdad? Para mí, esta declaración por sí sola es la respuesta absoluta, ¿por qué no usar Node.js para proyectos más complejos que una API o microservicio?

  • No existe un marco de pila completa estándar de la industria. Tenemos muchos micro frameworks geniales como Express y Koa, pero no puedo nombrar un equivalente de Django en la comunidad Node. Entonces, cada compañía más grande que escribe la suya, como Walmart escribió Electrode, que es tan complejo por sí mismo, tan obstinado (representación universal) que no hay muchas otras compañías que lo usen.
  • Conectado un poco para el último punto, porque si necesita algo para sus necesidades específicas, aún necesita reinventar la rueda, por ejemplo, escribiendo su propio marco completo de pila o su módulo de autenticación. Ohh, hay passport.js, que es el “estándar de la industria”, ¿verdad? Pero, ¿qué sucede si desea almacenar las sesiones en SQL en lugar de Redis o el almacén de memoria predeterminado, para no cerrar sesión en el reinicio del servidor? Puede elegir un middleware de terceros para esto, que probablemente no sea 100% compatible con su microframework específico, y ese complemento probablemente no sea suficiente, si también desea almacenar los tiempos de inicio / cierre de sesión del usuario, agente de usuario o direcciones IP en la base de datos (que es lo mínimo si piensa en seguridad). Entonces, passport.js no es la herramienta adecuada y usted tiene que escribir su propia autenticación y gestión de sesión por su cuenta.

Estadísticas aquí y allá, pero hay una ligera desaceleración en la popularidad de Node.js. Muchos proyectos nuevos que piensan con Go (que tampoco es perfecto), gracias a las decisiones de diseño de Node.js y al infierno de devolución de llamada natural de javascript que disparó millones de nuevas bibliotecas (devoluciones de llamada, generadores, promesas, asíncrono / espera) para tener una solución para un diseño problema. Estoy emocionado de ver más de 20 años a partir de ahora, qué nuevas bibliotecas demasiado complicadas tendremos para el mismo problema, porque créanme, estas no son las últimas.

Bueno, solo por tratar de fortalecer mi opinión con estadísticas totalmente irrelevantes: Google Trends

Comparo Node con Go, porque muchos equipos que consideran uno para el otro, ambos apuntan principalmente a los servicios web y ambos comenzaron al mismo tiempo, el lanzamiento inicial de Node.js fue 2009.05.27. y Go’s 2009.11.10.

Lo que también es interesante para ver la popularidad absoluta de Golang en China (probablemente conectado con el Gran Firewall de China) y algunos países asiáticos:

Tenga en cuenta que node.js a veces buscaba como nodo y golang a veces buscaba como ir en contexto. Entonces esta estadística es totalmente un fastidio. Lo que podemos ver es una ligera desaceleración, casi estancamiento en node.js, y un aumento vertiginoso en golang.

Bueno, si limitamos nuestra búsqueda mundial desde 2009.09.01 y solo para la categoría “Computadoras y electrónica”, esto es lo que tenemos:

El cambio de popularidad ocurrió en julio de 2016 (probablemente esta es la fecha en que la mayoría de los programadores finalmente tuvieron ataques cerebrales para mantener las devoluciones de llamadas).

Interesante lo que también está sucediendo en China. Esto también está limitado desde 2009.09.01, pero para todas las categorías (por lo que no hay límite para Computadoras y Electrónica):

Use la herramienta adecuada para el trabajo en cuestión y NodeJS es ciertamente mejor para sacar cosas. Cualquier persona puede escribir JavaScript, por lo que su costo de desarrollo será menor a corto plazo.

Puede crear aplicaciones rápidas con NodeJS, como:

• Servidor de chat

• Sistema de carga muy rápido;

• Y, cualquier aplicación que necesite responder a solicitudes frecuentes de manera rápida y profesional, en tiempo real.

El uso de NodeJS depende principalmente de sus objetivos comerciales. Si está creando una aplicación web en tiempo real o de transmisión con múltiples conexiones simultáneas (redes sociales, aplicación de mensajería, emulador de terminal virtual, juegos multijugador, etc.) seguramente se beneficiará de las capacidades de NodeJS, en términos de rendimiento eficiente y proceso de desarrollo fácil . Es una opción inteligente para el desarrollo de API, con su capacidad para manejar múltiples solicitudes y escalar sin problemas.

Groupon, una de las empresas de comercio electrónico más grandes, reemplazó sus pilas Java, Ruby on Rails y PHP, con la combinación de Node.js, Java y Ruby para servicios de back-end. Esta decisión fue tomada por la curva de aprendizaje estrecha, una mejor escala y la capacidad de reutilizar elementos escritos anteriores del código.

Node.js PHP (lenguaje de programación) JavaScript (lenguaje de programación) Ruby (lenguaje de programación) Agencia de Desarrollo de Aplicaciones Móviles NYC | Agencia de desarrollo de sitios web NYC

Ni Java ni Node.js morirán pronto. Algunas de las principales empresas, como GoDaddy, Groupon y LinkedIn, son usuarios de Node.js, lo que es prueba suficiente de por qué el marco no morirá prematuramente. Por supuesto, como es la naturaleza de los marcos, tienden a ser menos populares.

Node.js se usa básicamente para desarrollar programas de red como los servidores web, y aseguran la ejecución paralela de comandos, y hacen uso de la función de devolución de llamada para saber si la ejecución se ha completado o ha fallado. La capacidad de alto rendimiento de Node.js combinada con las excelentes características hacen que sea fácil para las empresas construir servidores web confiables y seguros.

Espero que esta información ayude. Para obtener más información, puede comunicarse con Silver Touch Technologies Ltd.

Siéntase libre Obtenga una cotización gratis: solicite una propuesta

Estudio de caso: estudios de caso

Node ha pasado su fase inicial emocionante donde todos hablaron y la mayoría de las nuevas empresas lo adoptaron. Proyectos como IBM StrongLoop muestran que Node se ha generalizado y tiene un sólido seguimiento en la industria. La capacidad de representar los SPA en el servidor siempre tendrá utilidad para las empresas que necesitan optimizar para SEO (por ejemplo, Redfin, un sitio inmobiliario que presenta páginas de React para cada dirección listada en Estados Unidos).

Pero para otras compañías que necesitan optimizar el rendimiento, Node puede no ser la opción correcta. Muchas nuevas empresas nuevas ahora eligen idiomas como Golang o Scala (los frameworks Java, .NET, PHP y Python también mejoran)

El nodo nunca desaparecerá, pero definitivamente no es el “lenguaje de un servidor para gobernarlos a todos”

No aún no. Pero lo hará pronto. Eric Wise señaló elocuentemente que Node nunca alimentará una gran parte de los sitios web del mundo: la respuesta de Eric Wise a En cinco años, ¿qué idioma es más prominente: Node.js, Python o Ruby? ¿Por qué?

El nodo se basa en el bucle de eventos. Cualquiera en CS sabe que este modelo de concurrencia es una mierda. Una vez escuché a alguien describir el ciclo del evento como “la concurrencia de un hombre pobre”. Tenía razón. La concurrencia adecuada se puede encontrar en idiomas como Go, Erlang / Elixir, Clojure, Haskell, etc. La concurrencia de Node es tan buena que incluso uno de sus contribuyentes más brillantes la abandonó: The Fall of the House of Node.

Eventualmente, la gente se despertará y se dará cuenta de la verdad, que Node no es una panacea en la parte de atrás. En este momento, están como hipnotizados en un culto; no se puede razonar con ellos. Solo ven la luz del sol y el arco iris para Node.

A partir de 2015, creo que está confundiendo “declinar” con “no crecer tan rápido” .

Honestamente, Node.js puede ser la plataforma de más rápido crecimiento. Recuerdo haber visto a Ryan Dahl presente en Strangeloop en octubre de 2010, demostrando una versión anterior de node.js escribiendo código en vivo en la pantalla grande en el escenario principal, instando a la gente a que estaba lejos de estar listo para la producción.

Escribo esto en junio de 2015, por lo que no han pasado cinco años.

¡En ese tiempo, el administrador de paquetes de NPM ha alcanzado 150k paquetes! (npm) Como referencia, el equivalente de .NET Nuget se lanzó en octubre de 2010 y ahora ha alcanzado ~ 37k paquetes. ¡Esa es una cantidad increíble de participación comunitaria!

Node.js ha destruido todas las expectativas. La mayoría de las principales empresas de tecnología tienen una cierta cantidad de Node.js ejecutándose en su pila, se ha convertido en un idioma principal en las solicitudes de empleo. Por todas las medidas ha sido un gran éxito.

Entonces, tal vez ha “alcanzado su punto máximo”, pero eso no es necesariamente algo malo … a su antigua tasa de crecimiento exponencial, habría absorbido al mundo tecnológico en 5 años más. Ahora es simplemente “bastante popular” , pero no lo llamaría “en declive” .

La plataforma Node es muy buena para aplicaciones de un solo usuario (juegos, aplicaciones web, herramientas de línea de comandos, aplicaciones “exploradas”, contenedores de navegador Node +), pero creo que mucha gente lamentará usarla para backends más grandes Ahora, algunas personas hicieron algunas afirmaciones descabelladas acerca de que node.js es el MEJOR MARCO DEL SERVIDOR DE TODOS LOS TIEMPOS, con un rendimiento súper increíble a escala web. Eso fue una tontería y mentiras.
Node.js nunca iba a barrer el mundo y ser el One True Framework para escribir servidores, y eso se está volviendo cada vez más evidente. No es una elección terrible, pero tampoco lo es Rails. O C #. O Python O el infierno, PHP. Y la gente seguirá escribiendo servidores en todos esos idiomas y marcos. Si escuchas el bombo, pasamos de Node.js siendo el MEJOR PARA EL RENDIMIENTO a, no sé, golang o algo así. Y pasar de ser el MEJOR a ni siquiera ser comentado probablemente se sienta como un verdadero declive. En el mundo real, Node.js pasó de una tecnología de nicho nueva y poco utilizada a una tecnología de nicho ligeramente menos nueva y muy utilizada. Eso no es una disminución en absoluto.

1.JS es un lenguaje muy expresivo como lo son la mayoría de los lenguajes dinámicos, pero los años de guerras de rendimiento por parte de los proveedores de navegadores le han dado una ventaja significativa.
2. Las herramientas son excelentes. Incluso se está llevando a cabo una gran cantidad de investigaciones de estilo académico, como FaceBook’s Flow.
3. Podrías compilar otros idiomas hasta JS. Puede compilar Doom to JS y reproducirlo dentro de un navegador. (Sin embargo, JS conservará esa ventaja de soporte nativo).
4.ECMAScript 2015 soluciona los grandes problemas con JS. Podemos tratarlo como un lenguaje completamente nuevo, y con el tiempo podemos olvidar la discusión de las partes buenas / malas.

James Burgess
Desarrollador de software en http://www.valuecoders.com

Esta es una buena pregunta. En el último año ha habido mucho drama en el campamento de node.js. Eran un grupo de desarrollo muy unido. Con la bifurcación IO.js hubo muchas preguntas sobre el futuro del nodo. Sin embargo, el grupo que ha estado sosteniendo las riendas de desarrollo se ha abierto y IO.js regresa al redil.

Creo que este drama llevó a algunas personas a percibir la caída del nodo, sin embargo, ahora que IO está de vuelta en esos sospechosos se han detenido. El nodo es tan fuerte como siempre.

Curiosamente, Java también tuvo un período muy similar cuando las opiniones de las comunidades ya no se escuchaban. Esto fue justo después de que Oracle los adquirió, sin embargo, las mejoras en la colaboración comunitaria han restaurado su credibilidad.

Yo diría que node.js es poderoso, pero excesivo para la mayoría de las empresas.

node.js es una capacidad API para servir millones o solicitar, muchos complementos en npm para hacer el trabajo.

Como sé, node.js es ampliamente utilizado en viajes / negocios hoteleros para atender llamadas frontales de Ajax, por ejemplo, Buscar hotel en la IU del mapa.

Pero pensé que el desarrollo frontend / backend todavía debe seguir en .NET / Java / PHP, así como en Python, ROR para deshacerse de la documentación más alta / soporte de la comunidad.

En el mundo de Marketing / CRM / BI, node.js sigue siendo ecológico para integrarse a la succión de API de terceros como Analytics, Tracking, Payment gateway, herramienta de BI, CRM, etc.

Creo que Node.js está más conectado que en cualquier otro momento. Con io.js y el establecimiento Node.js y el grupo y las herramientas poco comunes que tiene Node, se mantendrá durante bastante tiempo.

A fin de cuentas, es extremadamente concebible que la acumulación esté disminuyendo a medida que las personas descubran aplicaciones genuinas con los pies en la tierra en lugar de intentar aplicarlo a todo. Por mi parte, no confío en que Node sea una etapa adecuada para construir una lógica de servidor multicliente. Hub es extraordinario por asincronía, sin embargo, eso no debe confundirse con concurrencia *, que es realmente lo que necesita en esas situaciones (puedo componer un resumen de las cosas que Node no hace bien para construir marcos de backend seguros, sin embargo, ese es un caso )

La etapa Node es útil para aplicaciones de un solo cliente (recreaciones, aplicaciones web, aparatos de línea de carga, aplicaciones “navegadas”, compartimentos de navegador Node +), sin embargo, creo que muchas personas llegarán a lamentarse utilizándolas para grandes backends. Además, la consecuencia de eso puede hacer que aparezca como si estuviera disminuyendo.

Institutos de formación Java en kukatpally | Institutos de formación Java en KPHB

Creo que Node.js es más fuerte que nunca. Con io.js y la fundación Node.js y la comunidad y las herramientas excepcionales que tiene Node, se mantendrá durante mucho tiempo.

Dicho esto, es muy posible que el bombo esté disminuyendo a medida que las personas encuentren aplicaciones prácticas reales para él en lugar de tratar de aplicarlo a todo. Personalmente, no creo que Node sea una plataforma viable para construir lógica de servidor multiusuario. Node es ideal para la asincronía, pero eso no debe confundirse con la concurrencia *, que es realmente lo que desea en esos escenarios (puedo escribir una lista de cosas que Node no hace bien para construir sistemas backend seguros, pero ese es un ejemplo) .

La plataforma Node es muy buena para aplicaciones de un solo usuario (juegos, aplicaciones web, herramientas de línea de comandos, aplicaciones “exploradas”, contenedores de navegador Node +), pero creo que mucha gente lamentará usarla para backends más grandes. Y el resultado de eso podría hacer que parezca que está disminuyendo.

* La concurrencia no es paralelismo (ni asincronía)

Hay nodos positivos y negativos en Node, como con cualquier lenguaje o marco.

En mi experiencia muchas empresas, especialmente. Las tiendas tradicionales de Java actualmente están buscando desarrolladores experimentados de Node. Lo más probable es que limpien el desastre que dejaron los antiguos desarrolladores.

Gracias

Mangat Singh

empresa de desarrollo web derby

De acuerdo con los datos que rastreo en hilos “whoishiring” de Hacker News cada mes, no. Node.js parece muy saludable. De hecho, solo este mes superó a Ruby on Rails como la herramienta de desarrollo web del lado del servidor # 1 mencionada en las publicaciones de trabajo.

Tendencias de contratación de Hacker News: lenguajes de programación más populares (junio de 2015)