Estoy de acuerdo con las otras respuestas aquí (aunque menciono A4 en mi etiqueta, también me gusta mucho y uso React en proyectos). Sin embargo, responderé de manera diferente.
Aprenda arquitecturas de aplicaciones web. Ayudará enormemente a su carrera a medida que avance. Si no tiene esa experiencia, comience solo con esa arquitectura de aplicaciones y concéntrese en diseñar las aplicaciones para el rendimiento, la reutilización y acostumbrarse a resolver los mismos problemas de la misma manera cada vez: patrones de diseño y comprensión total y poder implementar sin problemas cosas como el principio de responsabilidad única en el diseño de su código. Si ya tiene esa experiencia, dé el siguiente paso lógico: arquitectura de sistema y servicio. Comience a aprender esos patrones y principios, en cómo los objetos en un sistema pueden desacoplarse y comunicarse entre sí. Diseñar la arquitectura para la seguridad en lugar de limitarse a un módulo de autenticación y autorización integrado. Eventualmente, querrá aprender a diseñar sus PROPIOS procesos de autenticación / autorización sin usar un componente estándar existente o algo integrado en el servidor web (la mayoría Es posible que los proyectos ni siquiera necesiten esto, pero aprender a hacerlo por su cuenta, y desarrollar manualmente componentes de este tipo que son centrales para la funcionalidad de la aplicación pero que a menudo se manejan mediante marcos), creo que ayudará a sus habilidades de diseño arquitectónico.
Ahora, antes de todo lo que te dije en el párrafo anterior, aprende JavaScript. Aprende JavaScript. Aprende JavaScript. Los entresijos. Las implementaciones para patrones comunes. Programación funcional y cómo y por qué es útil (JavaScript implementa aspectos de programación funcional y pueden ser bastante útiles). Código de sintonía Debe poder desarrollar una aplicación escalable en el front-end tal como lo necesita para el back-end.
- Si deseo crear un sitio web con una fuente de noticias, un foro, reseñas y un blog, ¿cuáles son las mejores combinaciones de lenguajes de computadora que debo usar?
- ¿Por qué siento la necesidad de entender todo en el desarrollo web / móvil?
- Soy nuevo en el desarrollo web y me gustaría aprender tanto front-end como back-end. ¿Cuál es la mejor pila para aprender? ¿Cómo se comparan Node.js y Express.js con Java? ¿Puede Node.js hacer todo lo que un back-end de Java puede hacer en términos de escala, confiabilidad, seguridad, etc.?
- Estoy buscando configurar un blog con un diseño / diseño personalizable: ¿me recomendaría usar WordPress o un servicio similar como Wix?
- Estoy creando un sitio web donde los usuarios pueden subir videos. ¿Cómo puedo evitar que los usuarios carguen desnudos? ¿Hay algún algoritmo para eso o alguna solución?
Finalmente, como mencionó aprender la pila MEAN, le recomendaré aprender Angular (la nueva versión). Angular promueve un paradigma arquitectónico basado en componentes (como lo hace React). Puede integrarse con sus aplicaciones existentes de AngularJS y permitir una migración incremental si está utilizando componentes en AngularJS 1.5+. Una buena manera (creo) de comenzar a aprender es tomar una aplicación AngularJS existente y comenzar a convertirla un componente a la vez en Angular (actualmente en la versión 4, pero ignore los números de versión en Angular ahora, es solo Angular, como Chrome es solo Chrome, no Chrome 57.0.2.blahb.lah.blah). El desarrollo e integración componente por componente le dará práctica para pasar datos de un lado a otro entre los componentes de la versión anterior y las nuevas versiones. Trabajar con datos de manera elegante en aplicaciones JavaScript siempre es importante para un buen diseño y estabilidad de la aplicación.