Empaquetadores

Existen empaquetadores que nos ayudan a tener todos los archivos en producción pero al momento de mandar al navegador sea lo mas ligero posible

Lo mejor es experimentar con los empaquetadores para saber cual sirve mejor para cada proyecto.

Segun Richard Harris es mejor que usemos webpack para aplicaciones y paginas web, y Rollup para librerías.

“Compiladores”

Babel

Es una herramienta que se encarga de convertir código ECMAScript en una versión de JavaScript compatible con el navegador o la versión de Node.

Typescript

No es un compilador, es un lenguaje de programación tipado y orientado a objetos similar a JavaScript pero con sus propias reglas.

Herramientas para UI

Son herramientas que se encargan de las vistas e interacciones con el usuario, se encargan de transformar componentes en un render con el que pueden interactuar los usuarios, algunas librerías famosas y que nos ayudan a hacer vistas reactivas son:

Estilos

CCS y preprocesadores

Podemos escribir CSS o usar preprocesadores como Sass, Less o Stylus para escribir estilos más cómodamente y que ellos se encarguen de convertir ese código en CSS que los navegadores entiendan.

CSS-in-JS

Normalmente el HTML, el CSS y el JS estaría en cada archivo individual pero esto nos permite desarrollar los 3 lenguajes en un mismo componente, que necesariamente no es un mismo archivo.

Routers

Son la forma en la que construimos la navegación en nuestra aplicación

Entornos de desarrollo

Son un grupo de librerías ya configuradas para trabajar con un montón de librerías en conjunto. Se llaman mas CLI y desde la consola podemos elegir lo que queremos y configurar todo por nuestro lado.

Frameworks

Son herramientas todo en uno, se encargan de tener muchas funcionalidades para facilitar la construcción de nuestra aplicación.

Como Angular

Consulta de datos

Herramientas para hacer consulta de datos, formas o protocolos con las que nos comunicamos con el backend para enviar o recibir información.

Hay herramientas para hacer peticiones que no hacen diferencia, pero estas herramientas si hacen diferencia:

Manejo del estado

Son las librerías que podremos definir un estándar de flujo de datos constante y predecible dentro de la aplicación, en vez de que todos sean diferentes podremos definir un patron común

Materiales Extra

Webpack and Rollup: the same but different

¿Qué es y para qué sirve Babel?