Go vs Node.js: ¿Cuál para una aplicación de iPhone que procesará rutas para Google Maps?

Primero, me gustaría estar en desacuerdo con la premisa de la pregunta, que la pila de tecnología es una “parte muy especial”. Creo que toda elección razonable podría funcionar, y no espero que la elección sea demasiado fatídica.

No sé demasiado sobre node.js, pero puedo dar mi perspectiva sobre Go:

  1. Go está usando el modelo muy asíncrono que usa node.js, pero sin usar devoluciones de llamada. Los hilos / goroutines verdes le permiten escribir código síncrono que utiliza debajo una lectura de socket asíncrono estilo encuesta. Si te entiendo correctamente, te encantará.
  2. No sé qué tan maduro es Node.js, pero Go definitivamente es menos maduro que otras tecnologías. Por ejemplo, si desea agregar un inicio de sesión SASL o una integración de Kereberos, tiene bloques de construcción estables integrados con Java, pero (casi) gurnisht para Go.
  3. La curva de aprendizaje es importante. Si tiene una pila de tecnología que ya conoce y ama, necesita una muy buena razón para volcarla para Go. Puede ofrecer suficientes beneficios para hacer que el cambio valga la pena, pero desde mi punto de vista técnico, desde un punto de vista técnico, usar Go para webapp no ​​es su punto fuerte. Mira a un Djangonauta construyendo una aplicación web en Go with Gorilla
  4. Dicho esto, si estás listo para sacrificar algo de productividad para ampliar tu conocimiento, puedo asegurarte que encontrarás a Go único en la multitud. ¿Qué otro lenguaje de programación creó un generador de perfiles como parte de su conjunto de herramientas principales? ¿Cuál mantiene la interfaz compatible con gcc? ¿Cuál incluye la pila nativa de procesamiento de imágenes y criptografía en la biblioteca estándar? Creo que nadie hace todo lo anterior, ni siquiera D.

Lo que elijas para este proyecto en particular, dale un paseo a Go. Muchos lo hicieron y se enamoraron.

More Interesting

¿Cuáles son los deberes principales del desarrollador de software líder?

¿Cómo desarrollan software las nuevas empresas indonesias?

¿Qué debe saber todo CEO sobre ingeniería y gestión de una organización de ingeniería?

¿Cuál es el primer paso de un rol de desarrollador de software en una empresa de tecnología mediana / grande para entrar en roles de gestión?

¿Cómo es que, a fines de 2014, todavía hay muchos desarrolladores de software que piensan que las pruebas unitarias son una pérdida de tiempo?

¿Cuál es mejor para el futuro, ingeniería informática o ingeniería de software?

Cómo tener éxito como ingeniero de software

¿Cuál es el mejor proyecto basado en STEM para una niña principiante absoluta de cuarto grado?

Si a la mayoría de los programadores les encanta aprender nuevos lenguajes de codificación (ver enlace), ¿cómo se convierten en expertos cuando las tecnologías son abundantes y profundas?

¿Puedes tener el control del DOM con Java como lo tienes con Javascript?

¿Estudiar mecatrónica e ingeniería de software juntos te convierte en un talentoso diseñador y programador de robótica?

'80% de los recursos de desarrollo de software se destinan a pruebas (QA) '. ¿Es esta la verdad o un mito?

¿Cuáles son algunos buenos libros para aprender patrones de diseño utilizando un enfoque de solución de problemas?

¿Qué complementos de Vim debo instalar para que Vim sea perfecto para el desarrollo de Javascript?

Pruebas de software: ¿cómo se mide la efectividad de una prueba? ¿Y cómo se compara eso con su costo?