ALV crecio mucho este joven D: https://www.youtube.com/watch?v=pizgd1wM-LI
Fundamentos del Desarrollo Web Profesional
Cuándo necesitas un framework de JavaScript
Qué son los componentes
Cómo estructurar un componente
Qué es reactividad
Librerías vs. frameworks
Ecosistema de frameworks y librerías JavaScript
Contexto y funcionamiento de los Frameworks JavaScript
Qué es React y cómo se construyó
Qué es un componente en React y cómo funciona
Cómo usar React.js
Manejo del estado en React
Qué es Angular y cómo se construyó
Cómo usar Angular
Qué es Vue y cómo se construyó
Cómo usar Vue.js
Qué es Svelte y cómo se construyó
Cómo usar Svelte
Estilos con CSS, preprocesadores y CSS-in-JS
Qué es CSS-in-JS
Componentes en Angular con CSS
Trabajando con Vue Components
Vue Components con Preprocesadores de CSS
Trabajando en React con Styled Components
Estilos dinámicos con Styled Components en React
Trabajando en Svelte con Emotion
Cómo escalar sitios o aplicaciones web
Tipos de aplicaciones según su router: SPAs vs. SSR
Frameworks sobre frameworks: Next.js
Organización de archivos en el frontend
Retos y análisis para elegir tu próximo stack de desarrollo frontend
Cómo especializarte en Frameworks de JavaScript para Frontend
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 32
Preguntas 4
ALV crecio mucho este joven D: https://www.youtube.com/watch?v=pizgd1wM-LI
🙏 Si tuviera que construir un framework para frontend priorizando que sea muy robusto por encima de que sea super “fácil”, definitivamente Angular sería mi mayor inspiración.
En el 2009 un grupo de amigos Desarrolladores inventaron una herramienta para que personas que no sabian programar pero si HTML pudieran hacer aplicaciones, esto no tuvo exito. Despues uno de ellos fue a trabajar a Google Feedback. Pero para esto necesitaron 17k lineas de codigo en frontend, usando un Google Web Toolkit, pero por esto apostaron que podian hacerlo en 2 semanas, pero logro hacerlo en 3 y con 1.5k lineas de codigo, y asi nacio Angular JS, que se volvio Open Source y patrocinado por google. Es como REACT pero FB depende totalmente de este, pero Google no depende de angular. Google solo lo patrocina.
Entre 2012 y 2014 Angular era bastante popular pero con el paso del tiempo empezo su decaida, y anunciaron que lo iban a hacer desde 0 y empezar a usar componente, pero los que iban a usar a angular no sabian que iba a pasar porque no iba a tener compatibilidad.
Es dificil convinar angualar con alguna libreria o algo que no se haya hecho especificamente para angular.
Angular tiene un sistema para crear componentes que se llaman Engine Modulos o Modulos de angular, que agrupan componentes y servicios a un mismo fin o a un mismo dominio. Los componentes son la logica y la interfaz de usuario para cada pedazo de la aplicacion.
Los componentes tienen dos partes, las logicas y las partes de UI, esto lo haremos con una clase en TS. Lo definimos con algo parecido a HTML.
Los servicios son agrupaciones de codigo. Agrupaciones de logica que podemos usar en varios componentes por toda la aplicaion. Esto lo inyectamos a los componentes que usamos Inyeccion de dependencias.
Angular tiene a Angular Ivy que se encarga de renderizar los componentes en angular con Incremental DOM. Como React usa JSX, Angular tiene su variacion de HTML que no es puro. Lo que hace Angular Ivy es convertir este HTML en un JS para renderizar los componentes en el DOM.
Angular explica que crear una copia de todo el DOM es innecesario, con el Incremental DOM cada componente se convierte en Instrucciones y estas hacen que se ejecute y renderice y actualice el componente, en ningun momento crea copia del DOM y ahorra memoria.
En angular 9 reescribieron el motor completamente. Antes habia que compilar muchas veces cada que cambiabamos componentes. Con Angular Ivy cambio la forma en la que se describe para que los componentes solo se afecten asi mismos y no a los demas.
En el 2020 Svelte tomó la delantera y quedo en 1er lugar en lo que a librerias y frameworks de JS significa. Si quieren echarle un vistazo aqui esta: https://svelte.dev
Emocionado por aprender Angular 😁
Me la estoy pasando bomba con este curso
Historia
Como construyeron Angular
Angular tiene angular Ivy como react tiene a virtual dom
El objetivo de Google al usar Incremental DOM en vez de Virtual DOM es para que el performance no disminuya y en cambio, aumente en dispositivos móviles, ya que estos tienen menor potencia al momento de renderizar el DOM.
.
Entre sus ventajas están el hecho de que es mas rápido el renderizado, (ya que no pasa por el Virtual DOM y compara al viejo y al nuevo DOM), además de que ahorra espacio en memoria, al no tener que estar haciendo copias del DOM.
.
Entre sus desventajas, la principal es que puede llegar a ser difícil debuggear al momento de que ocurra un error
.
Desde mi punto de vista, me gusta mas este enfoque de hacer la renderización rapida y el ahorro de la memoria. Siento que es lo correcto para mejorar el performace, principalmente en webapps muy grandes
Aqui la documentacion oficial de Angular para que le hechen un ojo:
https://angular.io/docs
En 2009 un equipo de programadores querían crear una herramienta para personas que no sabían programar pero que si sabían HTML pudieran hacer web apps, pero no tuvieron éxito 😦.
Tiempo después uno de ellos se fue a trabajar en Google Feedback que a simple vista se veía sencillo pero para construirlo se necesitaron 17k líneas de código solo en el Frontend usando incluso Google Web Toolkit un framework de Google que se suponía debía reducir la complejidad del código, es por esto que le apostó a su jefe que lo podía hacer desde 0 y más sencillo en dos semanas (spoiler: se tardó 3 y solo usó 1500 líneas), así nació Angular JS.
En el 2010 Angular se hizo Open Source y patrocinado por Google.
Cabe recalcar que FB si depende de React, Google no depende realmente de Angular.
2012-2014 ya era muy popular. BackBone.
Angular se empezó a quedar atrás con respecto a otros Frameworks y el equipo de Angular decidió reescribirlo desde 0 y cambiar completamente su arquitectura. Iban a empezar a usar componentes.
Angular usaba TypeScript en lugar de JS.
¿Cómo funciona?
Angular tiene un sistema para crear componentes llamado Engine Module o módulos de Angular, son contenedores que agrupan componentes y servicios que responden a un mismo dominio (a una misma parte de nuestra aplicación) pero no necesariamente partes físicas, si no a las funcionalidades o procesos que hace nuestra aplicación.
Los componentes son la lógica y la interfaz de usuario para cada parte de nuestra aplicación. Para crear un componente tenemos que crear una clase en Type Script con los métodos que necesitemos para la lógica de nuestro componente, además, en un archivo aparte que parece HTML, pero que no es HTML vamos a definir exactamente los componentes y etiquetas que van a ir en nuestro componente.
Los servicios son agrupaciones de código, de lógica que no necesitamos solo en un componente, sino que los podemos usar en varios componentes por toda la aplicación; Estos servicios se los inyectamos a nuestros componentes usando inyección de dependencias.
Incremental DOM y Angular Ivy vs Virtual DOM.
Angular Ivy se encarga de renderizar nuestros componentes en Angular usando una estrategia llamada Incremental DOM.
Así como React usa Jsx, Angular también tiene su propia sintaxis de HTML para escribir la UI de nuestras aplicaciones, no es HTML puro, tiene variaciones para que podamos iterar en una lista o usar condicionales, lo que hace Angular Ivy es transformar este “HTML” en instrucciones de JS para renderizar nuestros componentes en el DOM.
Con el Incremental DOM lo que hacemos es que cada componente se convierte en ciertas instrucciones en código JS y estas instrucciones son las que se ejecutan para renderizar el componente y actualizarlo cuando hay una interacción de los usuarios, en ningún momento se hace una copia del DOM y esto nos ahorra mucha memoria.
En Angular 9 reescribieron por completo el motor de render y ahí aparece Angular Ivy, antes la compilación de cada componente se transformaba en un engine factory, que es una función donde se guardaba la descripción del DOM en el que se debía transformar cada componente y el segundo es una función que se llamaba cada que el estado cambiaba para actualizar nuestro componente. Antes se tenía que compilar muchas veces.
😮 Es súper muy interesante cómo los desarrolladores/as hemos realizado cosas en Angular en los últimos años. Pese a que es el framework preferido en sitios web corporativos, el aprecio por trabajar con Angular ya no es el mismo que antes 😢.
Una comparación del último StateOfJS:
Cayendo a pesar de sus mejoras recientes.
Casi el mismo desde el 2018, pero no incrementando su uso.
Da un poco de miedo lo complejo que suena Angular,
Pero suena super potente
Da miedo tanto cambio tan brusco
Ahora que se NestJShe captado al momento la idea de Injección de Dependencias en Angular… lo que aprendemos en un lado lo transferimos a otro.
Angular is Love!!!
Falta un curso de rxjs
Que relajo la historia de angular, al parecer ni ellos sabían que iba a pasar
la mala reputación de angular se debe en mayor parte por los desarrolladores junior o desarrolladores con 2 años de experiencia que les gusta criticar y creen que php está muerto
Increible lo que estoy aprendiendo con estos ejemplos!!
Mi amigo que le gusta Angular y lo usua, de seguro esta clase le va a encantar 🌟 .
Recuerdo que mi primer encuentro fue con angularjs en la pagina w3school y de repente veo disque angular 2 y cuando empiezo a ver angular 2 veo que es totalmente diferente a los lee estaba aprendiendo, eso hizo que me desencantara de ese lenguaje tan “enredado”, hoy en dia ya he empleado proyectos en angular
Para mi esos cambios de versiones de angular tan grandes, fueron los motivos por lo que no me motivaba a aprenderlo y termine llendome a React y Vue.
Que hace Incremental DOM
Que es el virtual DOM de React
Esta muy interesante este tema de los frameworks de JavaScript pero esta clase se sintio muy extensa en el sentido de ir tomando apuntes con tantos conceptos nuevos que se fueron hablando por lo demás hasta el momento este curso esta siendo bastante interesante
angular será odiado pero da de comer a varios :'v y muchos lo amamos
¿Hay alguno que sea más recomendado que otro?
Me refiero a entre Angular y React.
No es por desmotivar, pero nadie nunca remplazara al profesor Leonidas Esteban 😕
zzz
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.