Debe desarrollar un backend para una red social con solo Java, Phyton y Node.JS. ¿En qué partes del back-end escribirías en qué idioma?

Esto debe estar destinado a encajar en una red más grande de aplicaciones con las que comparte una base de código. No hay otra razón sensata para calzarse en una elección entre solo estos 3 idiomas. Entonces, la decisión aquí debe basarse en gran medida en factores sobre los que no nos ha dado una idea.

ETA: Me di cuenta de que hay bibliotecas para los 3 idiomas que prácticamente le entregan estas características en una caja bien envuelta. ¿Qué idioma hace feliz al ejecutivo, me consigue un aumento y sale de la playa antes? Elegiré eso, ya que mi ejecutivo claramente solo se preocupa por las palabras de moda. No estoy tan orgulloso como las otras 2 respuestas hasta ahora y con mucho gusto haré un trabajo tonto si la paga es correcta.

Ignorando eso, y suponiendo que también se trata de una aplicación creada desde cero, elegiría Python. Solo se dirige a 50 millones de usuarios normales. Eso no es muy grande, por lo que Python es adecuado. Si hubiera dicho 50 millones de creadores de contenido, necesitaría la estabilidad y la velocidad de Java. Pero pagará el tiempo de desarrollo adicional para usar ese lenguaje. Python es más rápido para construir. Los resultados generalmente no serán tan a prueba de balas como las buenas aplicaciones Java, pero podrá llevarlas al mercado de consumo mientras todavía estén en tendencia. Java lleva demasiado tiempo y, por lo tanto, está cada vez más reservado para aplicaciones empresariales que necesitan ser totalmente a prueba de balas, pero pueden tolerar retrasarse unos meses / años.

Node.js, todavía no está allí. Es muy popular entre los hipsters en este momento, porque puedes construir una gran aplicación muy rápidamente. Pero tendrá todo tipo de grietas y tendrás que esperar seguir corriendo como loco para mantenerlo en el aire. No sé si se desvanecerá o alcanzará la madurez, pero en este momento no lo elegiría para una aplicación de usuario de 50m a menos que fuera algo con una vida limitada como una aplicación para ‘Olympics 2020’.

Python es el punto medio razonable entre estas dos filosofías. Además, soy mucho mejor que los demás, por lo que generalmente lo elegiré independientemente del desafío, dadas solo estas opciones.

Yo personalmente solo iría a js full-stack. El back-end podría cambiarse con python, pero no estoy lo suficientemente familiarizado con él. Por otro lado, estoy familiarizado con Java, y nunca, nunca comenzaría un proyecto con él si tuviera la posibilidad de otro idioma. Node.js es lo suficientemente rápido, se integra muy bien con cosas de sondeo largas y aplicaciones en tiempo real en general, por lo que creo que sería una gran opción para este tipo de aplicación (especialmente porque está muy basado en IO, y apenas hay trabajo intensivo de CPU que hacer). Además, sigo sintiendo que Javascript no es realmente tan malo como lo hace parecer mucha gente (aunque tampoco es el mejor)

Si me dieran esa tarea, me aseguraría de que mi currículum estuviera actualizado, haría una copia impresa y una copia impresa, escribiría mi renuncia y buscaría otro empleo.

Eliges el idioma más adecuado para la tarea, no eliminas la tarea para que se ajuste al idioma. No trabajo para nadie que no entienda eso.

Si sé que mi cantidad mínima de usuarios es de 50 millones, voy a aguantar mis lágrimas y usar Java.

More Interesting

¿Cuál es el camino de aprendizaje agresivo del desarrollo de backend en medio año?

¿Cuáles son las razones por las que uno elegiría sumergirse en el desarrollo de iOS en lugar del desarrollo web front-end o backend? (Estoy pensando en un cambio de carrera)

¿Cómo trabajan juntos los desarrolladores front-end y back-end en el mismo proyecto en el trabajo?

¿Puede describir cómo las dependencias son diferentes en el back-end frente al front-end en JavaScript?

¿Alguien encuentra extraño que Apple no desarrolle su propio marco de back-end?

¿Cuál es la diferencia entre front-end, back-end y programación / desarrollo del lado del servidor?

¿Cuáles son algunos proyectos intermedios para desarrollar habilidades de front y back end?

¿Cuáles son las funcionalidades más importantes en las que debería centrarme mientras estoy aprendiendo el desarrollo de back-end?

¿Cuándo debería un principiante de programación comenzar a aprender el desarrollo de backend y la implementación en la nube?

¿Cuál es el mejor idioma para escribir el back-end del sitio web y por qué?

¿Cómo es el futuro de Scala and Go para el desarrollo de backend? ¿Cuál debería aprender?

¿Cuál es la hoja de ruta completa para el desarrollo web backend?

¿Necesita saber C / C ++ para el desarrollo web (creación de sitios web / aplicaciones web, programación / trabajo de fondo)?

¿Es importante aprender un lenguaje de consulta estructurado para el desarrollo del backend?

Cómo utilizar más de un idioma en mi back-end para diferentes propósitos