¿Eres estudiante de colegio, instituto o universidad? Domina la tecnología con EDteam por menos de lo gastas en la movilidad para ir a clases y consigue tu primer empleo en la tecnología. Entra a ed.team/estudiantes postula a las becas EDteam y #NoTeDetengas
Este bro es muy bueno explicando lo malo de los videos es el exceso de publicidad del mismo orador jejeje pero bueno con eso es que come hay que aceptarlo XD
Con el primer ejemplo me quedó completamente claro. Muy buena explicación. Aunque aun pienso que tiene mucho en comun con las promesas. Ya que uno tambien indica la solicitud, y queda esperando a que se resuelva la promesa, sin necesidad de estarla consultado a toda hora.
Excelente explicación. Particularmente sé que con programación estructurada, orientada a objetos (quizás si se quiere también a eventos) y multihebrada puedes hacer cualquier proyecto que tengas al frente, ese "observable" igualmente está pendiente de los cambios y ha de hacer las notificaciones, es decir, necesitas que exista esa capa operando... y eso amigos implica procesamiento que se traduce en mayor consumo de cpu y tiempos de respuesta. Me pregunto si para desarrollar un middleware este paradigma funcionaría, proyecto en el cual requieres conocer de concurrencia y sincronización entre múltiples hebras, bien creo que lo complicaría mucho más de lo necesario. Eso sin mencionar aquellos proyectos donde cada ms de procesamiento importa 😖🤒. Si un verdadero programador quiere desarrollar rutinas asíncronas pues el SO tiene en su API funciones de I/O de este estilo, no es necesario encimar otra capa más de ejecución a tu aplicación. Si realizas aplicaciones con GUI pues todos los IDE y sus lenguajes actuales tienen librerías gráficas incluso frameworks que te facilitan la vida y se comunican contigo con "eventos", ¿para qué reinventar el agua tibia?. Actualmente me encuentro desarrollando un servicio de streaming, tanto clientes como servidores, es multihebrado obviamente, uso eventos en la GUI (client), eventos generados por el SO ( callbacks en client, obviamente son asíncronos) y programación concurrente en el server... este paradigma no calzaría aquí en sitio alguno 🤷🏻♂️.
¿Con este tipo de paradigma se podría programar una aplicación bursátil que le avise al suscriptor de cuando un valor 'observable' ha llegado a la cotización que deseaba como evento, para luego él/ella ya haga sus operaciones de compra/venta de acciones ?
en la gran mayoria de exchanges, la funcion de alerta la podes programar tranquilamente, para un precio si baja a x y sube a x, es un alerta de precio.
Gracias a ambos. Es que a pesar de que Alvaro Felipe ha sido muy ilustrativo me cuesta entender la idea. Pero hoy mismo ya descubrí un video de un programador que lo explica con un ejemplo sencillo de diversas operaciones matemáticas que iban dirigidas como argumentos para una serie de funciones que retornaban otros datos (o no!) según una petición externa del usuario (p.ej. con botones o selectores para inhabilitar/habilitar esas funciones)
Estoy suscrito a tu canal y por alguna razon UA-cam nunca me da las notificaciones de tus videos con las notificaciones activadas (tambien me pasa con otos canales), sera error mio o un falla de UA-cam...?
Con AngularJS se puede usar la programación reactiva cuando se crean observables para conectarte a una base de datos Firebase y luego simplemente te suscribes a esos observables. Alguien me puede corregir?
Entiendo que estamos hablando de un conjunto de librerías que pueden aplicarse a muchos leguajes de programación y permite ir un paso mas allá en la optimización cuando se programa con eventos. Claramente permite una optimización de recursos.... sin embargo, el uso de estas librerías no cambia drásticamente (ni mucho menos) la forma de programar. Está muy lejos de clasificarse como un nuevo "PARADIGMA". Mas allá que sea mas optimo , a nivel programación cambia muy poco la forma de programar cuando se trabaja con eventos y con RX.
Como --posiblemente-- conozcas los paradigmas clásicos: oo/imperativo, funcional y lógico... este enfoque de programación llamado 'paradigma reactivo' --no es un Paradigma per se, sino una técnica, o enfoque de programación concurrente, que se implementa, sobre lenguajes de alto nivel, en cualquiera de los paradigmas existentes. Esta técnica proporciona o sugiere unas formas de manejar flujos de datos y eventos (asincronía o concurrencia) ante posibles acciones del entorno de usuario o cambio de los estados en los datos (lo 'Reactivo' usa 'observadores', tal como POSIXs usa daemons). Muchas de estas técnicas fueron implementadas por algol(1958), Lisp(1958), Simula(1960), Erlang(1989), Smalltalk(70s), el mismo lenguaje C (1972) y, mas reciente Javascript y Python. Erlang (1989), por ejemplo, fue diseñado desde el principio para manejar sistemas concurrentes y distribuidos, por otro lado, y más reciente, JavaScript popularizó el manejo de eventos asíncronos en el contexto de desarrollo web. Cada uno de estos lenguajes y sistemas contribuyó al desarrollo y evolución del manejo de eventos asíncronos de diferentes maneras, sentando las bases para los enfoques modernos en programación concurrente y/o reactiva.
Soy persona sorda traduzco videos de oyentes a personas sordas ,doy clases de lengua de señas ,le pido permiso para traducir sus videos a los sordos para que ellos aprendan ,les sirva sus videos ,si usted me lo permite le hago una prueba de mis videos para que lo mire
Los que desarrollamos videojuegos por lo menos a un nivel intermedio, es común usar los callbacks o cómo lo explica muy bien aquí "programación reactiva"
React como su nombre lo indica es reactivo, recuerda que react es un framework de javascript y javascript no es un lenguaje orientado a objetos, de hecho los lenguajes orientados a objetos generalmente son los fuertemente topado, pero obvio si se puede usar objetos pero no es el mismo enfoque que por ejemplo en Java o c#
No, react se llama react porque los valores de las variables se refrescan en UI cuando estas cambian. Pero para q cambien tiene que suceder un evento: manual o una señal del servidor (websocket). Pero todo el diseño (no un paradigma, como dice erróneamente el video) se hace en el backend, no en el frontend.
React es una libreria de JavaScript creada por facebook, ya para hacer programacion reactiva se tendria que importar librerias externas como las que menciona en el video que es RxJs, que tambien esta presente en Angular que ese si es un framework de JavaScript del lado del cliente
Dos cosas que están mal: 1. Programación reactiva no es un paradigma como lo puede ser la POO (orientado a objetos). De hecho se puede hacer programación reactiva con POO o programación funcional, que sí es un paradigma. 2. Programación asíncrona no es “que no se sabe cuando va a pasar”, sino que no se espera una respuesta para continuar. Javascript, por ejemplo, es un lenguaje asíncrono.
Espero que estos comentarios ayuden al canal, el cual considero muy interesante, mis comentarios son solo para debatir. Primero me parece un error comparar programación orientada a objetos (POO) con la programación reactiva. La POO es un paradigma de programación, es la base para lenguajes como C++, C# o Java. También esta el paradigma de programación funcional, donde encuentras lenguajes como Javascript. Pero programación reactiva es mas bien un diseño, el cual puede hacerse con cualquiera de los lenguajes mencionados, aplicando como bien se menciona aquí, todos los conceptos y patrones de diseño.
Corrección: Programas de manera estructurada NO es fácil. Fácil, es programar de manera no-estructurada, de manera espagueti, caótica. Programar siguiendo cualquier buena metodología (la que sea) es el fruto de años de formación y disciplina.
Explicaste muy bien Álvaro, me quedan dudas entonces si programo con React JS, RxJS reemplaza a react js? es muy diferente? RxJS es mas reactivo que reactjs?... o simplemente son 2 mundos totalmente diferente, lo confundo ya que hasta el nombre de ReactJS me suena a reactividad, cambios según el estado de otros componentes... buen video gracias.
De hecho react se puede hacer con clases (programación orientada a objetos) o con Hooks (funcional). Creo q el video confunde el termino paradigma de programación. La programación reactiva no es un paradigma como POO, sino mas bien un diseño.
¿Eres estudiante de colegio, instituto o universidad? Domina la tecnología con EDteam por menos de lo gastas en la movilidad para ir a clases y consigue tu primer empleo en la tecnología. Entra a ed.team/estudiantes postula a las becas EDteam y #NoTeDetengas
Una pregunta, una vez que se acabe mi membresía anual, podré volver a renovar mi membresía con el mismo precio si soy estudiante?
Hola una pregunta, esta metodología pertenece a las metodologías Imperativas o declarativas?
Este bro es muy bueno explicando lo malo de los videos es el exceso de publicidad del mismo orador jejeje pero bueno con eso es que come hay que aceptarlo XD
Hay otros videos sin publicidad, largo perro xd
Que buena clase de marketing, buen video
Con el primer ejemplo me quedó completamente claro. Muy buena explicación.
Aunque aun pienso que tiene mucho en comun con las promesas. Ya que uno tambien indica la solicitud, y queda esperando a que se resuelva la promesa, sin necesidad de estarla consultado a toda hora.
excelente video, saludos desde Peru.
Jajaja Ed team es de Perú
Edteam basado por usar ejemplos de sus clases como clase de reactiva😎😎😎
Muy buena explicación, entendí perfectamente, muchas gracias
Uyyyy excelente, ahora falta un video explicando la programación funcional
Excelente explicación. Particularmente sé que con programación estructurada, orientada a objetos (quizás si se quiere también a eventos) y multihebrada puedes hacer cualquier proyecto que tengas al frente, ese "observable" igualmente está pendiente de los cambios y ha de hacer las notificaciones, es decir, necesitas que exista esa capa operando... y eso amigos implica procesamiento que se traduce en mayor consumo de cpu y tiempos de respuesta. Me pregunto si para desarrollar un middleware este paradigma funcionaría, proyecto en el cual requieres conocer de concurrencia y sincronización entre múltiples hebras, bien creo que lo complicaría mucho más de lo necesario. Eso sin mencionar aquellos proyectos donde cada ms de procesamiento importa 😖🤒. Si un verdadero programador quiere desarrollar rutinas asíncronas pues el SO tiene en su API funciones de I/O de este estilo, no es necesario encimar otra capa más de ejecución a tu aplicación. Si realizas aplicaciones con GUI pues todos los IDE y sus lenguajes actuales tienen librerías gráficas incluso frameworks que te facilitan la vida y se comunican contigo con "eventos", ¿para qué reinventar el agua tibia?.
Actualmente me encuentro desarrollando un servicio de streaming, tanto clientes como servidores, es multihebrado obviamente, uso eventos en la GUI (client), eventos generados por el SO ( callbacks en client, obviamente son asíncronos) y programación concurrente en el server... este paradigma no calzaría aquí en sitio alguno 🤷🏻♂️.
Muy buena explicación, felicidades.
Excelente Master Class, Saludos desde Venezuela 👍👍
Buen día bendiciones
una de programación orientada a aspectos , por favor 😊😊
Qué micrófono utilizas?
excelente video aprendo mucho de ustedes
Saludos Edteam desde Honduras
Es como WebSocket y/o Streaming?
Muchas gracias
de 10 me encantó. 🙃☺
Hola qué buenos videos edteam
buen video
En rxjs cuál sería el observador y cuál sería el observable?
Excelente explicación! Y un excelente marketing.
Aquí un observador suscripto al observable! 😄
Eso! Ya aprendiste programación reactiva 😁🙌
@@EDteam 😄😋
¿Tiene más vídeos relacionado con los Patrones de diseño?
¿Con este tipo de paradigma se podría programar una aplicación bursátil que le avise al suscriptor de cuando un valor 'observable' ha llegado a la cotización que deseaba como evento, para luego él/ella ya haga sus operaciones de compra/venta de acciones ?
en la gran mayoria de exchanges, la funcion de alerta la podes programar tranquilamente, para un precio si baja a x y sube a x, es un alerta de precio.
Gracias a ambos. Es que a pesar de que Alvaro Felipe ha sido muy ilustrativo me cuesta entender la idea. Pero hoy mismo ya descubrí un video de un programador que lo explica con un ejemplo sencillo de diversas operaciones matemáticas que iban dirigidas como argumentos para una serie de funciones que retornaban otros datos (o no!) según una petición externa del usuario (p.ej. con botones o selectores para inhabilitar/habilitar esas funciones)
Que es mejor con rxjs ¿Angular o React?
osea es una implementación de el patrón observer?
Estoy suscrito a tu canal y por alguna razon UA-cam nunca me da las notificaciones de tus videos con las notificaciones activadas (tambien me pasa con otos canales), sera error mio o un falla de UA-cam...?
Excelente video
El curso pagado tiene algun titulo?
Cuál es la relación entre Programación Reactiva (RxJs) y Websockets..???
🤔🤔🤔
Con AngularJS se puede usar la programación reactiva cuando se crean observables para conectarte a una base de datos Firebase y luego simplemente te suscribes a esos observables. Alguien me puede corregir?
Cool 👌
Yo nunca le he dado a la campanita de youtube, siempre reviso los videos manualmente y con mucha frecuencia, odio las notificaciones XD
Cuando crean la app de edteam
Entiendo que estamos hablando de un conjunto de librerías que pueden aplicarse a muchos leguajes de programación y permite ir un paso mas allá en la optimización cuando se programa con eventos. Claramente permite una optimización de recursos.... sin embargo, el uso de estas librerías no cambia drásticamente (ni mucho menos) la forma de programar. Está muy lejos de clasificarse como un nuevo "PARADIGMA". Mas allá que sea mas optimo , a nivel programación cambia muy poco la forma de programar cuando se trabaja con eventos y con RX.
si quieren dominar rxjs una buena manera es aprendiendo Angular ya que este framework está construido encima de rxjs
La programación reactiva es un paradigma declarativo o imperativo? o o es la programación Data flow
Como --posiblemente-- conozcas los paradigmas clásicos: oo/imperativo, funcional y lógico... este enfoque de programación llamado 'paradigma reactivo' --no es un Paradigma per se, sino una técnica, o enfoque de programación concurrente, que se implementa, sobre lenguajes de alto nivel, en cualquiera de los paradigmas existentes.
Esta técnica proporciona o sugiere unas formas de manejar flujos de datos y eventos (asincronía o concurrencia) ante posibles acciones del entorno de usuario o cambio de los estados en los datos (lo 'Reactivo' usa 'observadores', tal como POSIXs usa daemons).
Muchas de estas técnicas fueron implementadas por algol(1958), Lisp(1958), Simula(1960), Erlang(1989), Smalltalk(70s), el mismo lenguaje C (1972) y, mas reciente Javascript y Python.
Erlang (1989), por ejemplo, fue diseñado desde el principio para manejar sistemas concurrentes y distribuidos, por otro lado, y más reciente, JavaScript popularizó el manejo de eventos asíncronos en el contexto de desarrollo web.
Cada uno de estos lenguajes y sistemas contribuyó al desarrollo y evolución del manejo de eventos asíncronos de diferentes maneras, sentando las bases para los enfoques modernos en programación concurrente y/o reactiva.
Cuál es la diferencia entre Callbacks, Promesas y Observables????🤔
Algún genio por ahí...
Saludos
Soy persona sorda traduzco videos de oyentes a personas sordas ,doy clases de lengua de señas ,le pido permiso para traducir sus videos a los sordos para que ellos aprendan ,les sirva sus videos ,si usted me lo permite le hago una prueba de mis videos para que lo mire
sería espectacular, inténtalo con un video y si sale bien podemos conversar una colaboración :)
@@EDteam Por favor me envías un vídeo tuyo ,yo lo traduzco a lengua de señas ,me regalas tu WhatsApp? Gracias
Que es un Pipe?
es igual al Patrón de publicador y suscriptor
Los que desarrollamos videojuegos por lo menos a un nivel intermedio, es común usar los callbacks o cómo lo explica muy bien aquí "programación reactiva"
En programación web también existen los callbacks e incluso promesas que son muy similares, pero son diferentes a la programación reactiva
básicamente es la aplicación del patrón de diseño observable
Primero
Buena data pero que odio que se crean los mejores, que critiquen y que hagan tanta publicidad.
Suena a algo que combinaría con machine learning
Eso es lo que hace Google
eso de oserbevle me suena a angular jeje
React es POO o es reactivo ?
React como su nombre lo indica es reactivo, recuerda que react es un framework de javascript y javascript no es un lenguaje orientado a objetos, de hecho los lenguajes orientados a objetos generalmente son los fuertemente topado, pero obvio si se puede usar objetos pero no es el mismo enfoque que por ejemplo en Java o c#
React es reactivo. No es un framework, es una librería o biblioteca.
No, react se llama react porque los valores de las variables se refrescan en UI cuando estas cambian. Pero para q cambien tiene que suceder un evento: manual o una señal del servidor (websocket). Pero todo el diseño (no un paradigma, como dice erróneamente el video) se hace en el backend, no en el frontend.
@@juan.carloz bro, estás diciendo una redundancia, porque reaccionar tiene relacion con reactivo, de reaccionar a los cambios ._.
React es una libreria de JavaScript creada por facebook, ya para hacer programacion reactiva se tendria que importar librerias externas como las que menciona en el video que es RxJs, que tambien esta presente en Angular que ese si es un framework de JavaScript del lado del cliente
Este paradigma fue chocante cuando estuve estudiando Flutter xD
¡Excelente video! La criptomoneda está cambiando el futuro de las finanzas. ¿Cuál crees que será la próxima gran ten
Vivo en Colombia, mi nombre Jesús zuluaga
Dos cosas que están mal:
1. Programación reactiva no es un paradigma como lo puede ser la POO (orientado a objetos). De hecho se puede hacer programación reactiva con POO o programación funcional, que sí es un paradigma.
2. Programación asíncrona no es “que no se sabe cuando va a pasar”, sino que no se espera una respuesta para continuar. Javascript, por ejemplo, es un lenguaje asíncrono.
Jaja
Dos cosas que están mal: los puntos 1 y 2 de tu comentario.
Espero que estos comentarios ayuden al canal, el cual considero muy interesante, mis comentarios son solo para debatir. Primero me parece un error comparar programación orientada a objetos (POO) con la programación reactiva. La POO es un paradigma de programación, es la base para lenguajes como C++, C# o Java. También esta el paradigma de programación funcional, donde encuentras lenguajes como Javascript. Pero programación reactiva es mas bien un diseño, el cual puede hacerse con cualquiera de los lenguajes mencionados, aplicando como bien se menciona aquí, todos los conceptos y patrones de diseño.
Hablar de asincronia necesariamente tiene que ser lo mismo que 'Tiempo Real"..????🤔🤔
O mejor dicho, todo lo asincrono es Tiempo real?????
eso se llama patron observador pero cada dia le ponen nombres mas bonitos :v
Flutter y Dart be like:
Es parecido a websocket,no?
Corrección: Programas de manera estructurada NO es fácil. Fácil, es programar de manera no-estructurada, de manera espagueti, caótica. Programar siguiendo cualquier buena metodología (la que sea) es el fruto de años de formación y disciplina.
No
@@EDteam JADSDS corta
Explicaste muy bien Álvaro, me quedan dudas entonces si programo con React JS, RxJS reemplaza a react js? es muy diferente? RxJS es mas reactivo que reactjs?... o simplemente son 2 mundos totalmente diferente, lo confundo ya que hasta el nombre de ReactJS me suena a reactividad, cambios según el estado de otros componentes... buen video gracias.
rxjs es una librería para programación reactiva, reactjs es una librería para componentes ui. Son 2 cosas distintas que pueden convivir a la par
De hecho react se puede hacer con clases (programación orientada a objetos) o con Hooks (funcional). Creo q el video confunde el termino paradigma de programación. La programación reactiva no es un paradigma como POO, sino mas bien un diseño.
Suena a arquitecturas manejadas por eventos !!! Cual es la diferencia? O una usa la otra????
eres peruano?
alv mas dee 3 mintuos para no hablar nada extrano los no me gusta
Eventos
C#
Buen vídeo, pero no te inventes enemigos. xdd Eso de que a muchos les arde por X o Y razón está un poco de más y da incluso un poco de cringe.