No hay nada llamado mejor aquí.
Cada tecnología está construida para resolver un problema particular.
Debes elegir una tecnología basada en el problema que vas a resolver.
- ¿Qué idioma recomendaría la gente para el desarrollo web de back-end?
- ¿Cuál es el lenguaje web de back-end más utilizado en Silicon Valley, especialmente por compañías conocidas y nuevas empresas emergentes que están impulsando las cosas?
- ¿Cuáles son algunos lenguajes de programación de back-end que se requieren para construir una aplicación híbrida?
- ¿Cuáles son los pros y los contras de escribir el backend en Go vs Erlang vs Python?
- Después de construir el front-end, ¿cuáles son los otros pasos en el desarrollo web?
Html , css , javascript son los idiomas de goto de la web.
Pero puede usar angulares , backbone , react o cualquier otro framework javascript que exista.
Aquí para la base de datos tienes que elegir sql y nosql .
sql :
- almacenar datos relacionados en tablas
- requieren un esquema que defina las tablas antes de usar
- Fomentar la normalización para reducir la redundancia de datos
- soporta JOINs de tablas para recuperar datos relacionados de múltiples tablas en un solo comando
- implementar reglas de integridad de datos
- proporcionar transacciones para garantizar que dos o más actualizaciones tengan éxito o fallen como una unidad atómica
- se puede escalar (con algo de esfuerzo)
- usar un lenguaje declarativo poderoso para consultar
- ofrece mucho soporte, experiencia y herramientas.
nosql
- almacenar datos relacionados en documentos de nombre-valor tipo JSON
- puede almacenar datos sin especificar un esquema
- Por lo general, debe estar desnormalizado para que la información sobre un elemento esté contenida en un solo documento
- no debería requerir JOINs (suponiendo que se usen documentos desnormalizados)
- Permitir que los datos se guarden en cualquier lugar en cualquier momento sin verificación
- garantizar actualizaciones a un solo documento, pero no a varios documentos
- proporcionar un excelente rendimiento y escalabilidad
- usar objetos de datos JSON para consultar
- son una tecnología nueva y emocionante.
Cuando elegir sql:
Funciona mejor para artículos discretos claramente definidos con especificaciones exactas. Los casos de uso típicos son las tiendas en línea y los sistemas bancarios.
cuando elegir nosql:
Funciona mejor para datos orgánicos con requisitos de fluidos. Los casos de uso típicos son las redes sociales, la gestión de clientes y los sistemas de análisis web.
lea el blog completo aquí: SQL vs NoSQL: Cómo elegir – SitePoint
Ahora que llegamos a la tecnología de backend , tenemos nodejs, ruby, python, php, java, .net
.net, java se utiliza para aplicaciones bancarias donde la seguridad es la principal prioridad.
Ruby on rails te permitirá crear prototipos de tus aplicaciones rápidamente. Muy popular entre las startups.
Python es un lenguaje bastante fácil que tiene una sintaxis fácil y tiene una gran cantidad de bibliotecas en análisis de datos y aprendizaje automático. Si su proyecto requiere análisis de datos y computación matemática, Python es el mejor lenguaje.
Nodejs es la mejor aplicación en tiempo real, como aplicaciones de chat.
Php es el más famoso cuando se trata del lado del servidor. Tiene una gran comunidad de desarrolladores. La mayor parte del mercado de Internet es propiedad de php. lenguaje más fácil para iniciarse en el desarrollo web.
El idioma que elija dependerá de sus requisitos de las aplicaciones.
Siga el modelo de ciclo de vida de desarrollo de software
Diseño : haga un bosquejo aproximado o un prototipo de diseño de su aplicación.
Definir : qué problemas desea resolver con su aplicación. Qué idioma tiene las mejores bibliotecas para resolver los problemas de pros y contras de todos los idiomas. Elija sus tecnologías aquí
Planificación : ahora tiene su plan de tecnología sobre cómo va a resolver el problema implementar la aplicación.
Implementar : ahora que ha hecho que su aplicación la implemente en el mundo real.
Pruebas : ahora descubre errores. Problemas en el software
Construcción : elimine los errores de implementación nuevamente, este proceso continúa.