Principios SOLID en React.js (Buenas prácticas) con ejemplos prácticos

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ก.ย. 2024

ความคิดเห็น • 107

  • @gncfhcnvc
    @gncfhcnvc 2 ปีที่แล้ว +109

    Me encanta este tipo de contenido, por que hay muchos cursos que te enseñan las bases de algo, pero no profundizan en como hacerlo de una manera correcta, muchas gracias midu. 🤩

  • @jholbertcaro6133
    @jholbertcaro6133 2 ปีที่แล้ว +6

    Buena Crack, en tu ultimo directo en inst preguntaba sobre buenas practicas y ya sacas el video ❤

    • @midulive
      @midulive  2 ปีที่แล้ว +4

      🤙 ¿Has visto? Esto sí que es nivel, eh :P

  • @itziarzamezagarcia966
    @itziarzamezagarcia966 ปีที่แล้ว

    Siempre se encuentra lo que una necesita en un video de Midu!!! GRACIAS CRACK! Súper interesante! pasito más para esta desarrolladora gracias a ti!

  • @coolokox
    @coolokox 2 ปีที่แล้ว +4

    Gracias por el video. A la espera del curso de nextjs 12 por acá💟

  • @miguelgargallo
    @miguelgargallo 2 ปีที่แล้ว

    Ostras muchas gracias, esto me ayudará a avanzar, gracias Miguel!

  • @crisanger
    @crisanger 2 ปีที่แล้ว

    Más videos de este tipo, con ejercicios prácticos. Se interiorizan mejor los conceptos

  • @jeanbayer
    @jeanbayer 2 ปีที่แล้ว

    Por mas videos como este!!!

  • @lautaroriveiro
    @lautaroriveiro ปีที่แล้ว

    Gracias midu!

  • @matiasmonasterio603
    @matiasmonasterio603 2 ปีที่แล้ว +2

    Oro puro

    • @midulive
      @midulive  2 ปีที่แล้ว +2

      Muchas gracias, Matias!!! 🤗

  • @luka4695
    @luka4695 10 หลายเดือนก่อน

    Genio, de los mejores para aprender a programar, crack saludos de arg

  • @sanchez-cristian
    @sanchez-cristian ปีที่แล้ว

    "El día que me dedique solo al contenido le darémos cañita..." LLEGÓ EL DÍA 😈

  • @andreagravano5146
    @andreagravano5146 ปีที่แล้ว

    14:36 JoJo's reference

  • @letsgobowling7
    @letsgobowling7 ปีที่แล้ว +70

    00:23 ¿Qué es SOLID?
    01:16 S: Single responsibility principle o Principio de responsabilidad única
    15:34 O: Open/closed principle o Principio de abierto/cerrado
    30:03 L: Liskov substitution principle o Principio de sustitución de Liskov
    36:04 I: Interface segregation principle o Principio de segregación de la interfaz
    45:55 D: Dependency inversion principle o Principio de inversión de dependencia

    • @valp_co
      @valp_co ปีที่แล้ว +1

      Necesitamos más comentarios como este, muchas gracias.

    • @Undead34
      @Undead34 11 หลายเดือนก่อน

  • @aglowkeys
    @aglowkeys 2 ปีที่แล้ว +43

    Me vino super bien este video porque siempre quise entender SOLID pero me costaba. Verlo aplicado a React me sirvió un montón, gracias

  • @theyagerprogramming5010
    @theyagerprogramming5010 2 ปีที่แล้ว +5

    Midu, te amo

    • @midulive
      @midulive  2 ปีที่แล้ว +3

      🤗 Y yo a tiiiiiiii

  • @guillermo.dapaixao
    @guillermo.dapaixao ปีที่แล้ว +6

    Midu tengo años programando, y sufri una etapa de bornout de la cual aun me estoy recuperando, la realdiad es que verte programar me recordo mi tiempo de supermotivacion, sigue asi hombre, gran trabajo

  • @javiermiranda6316
    @javiermiranda6316 2 ปีที่แล้ว +5

    Estaba estudiando programación de manera autodidacta pero no dedicándole tanto tiempo, ahora le dedico más tiempo gracias a tus videos, tu vocación por enseñar y a la pasión que le pones, muchas gracias midu! Saludos desde Chile.

  • @marcosMartinez-wm7bd
    @marcosMartinez-wm7bd 2 ปีที่แล้ว +1

    No me quedo del todo claro el segundo ejemplo, basicamente reducimos la cantidad de props y creamos componentes que pasamos como children? Para de esa forma tambien reducir las condicionales dentro de un componente?

  • @jormanbustos7877
    @jormanbustos7877 5 วันที่ผ่านมา

    En liskov substitution por transitividad el padre tambien deberia poder realizar las accciones del superPadre, no?
    es decir si tenemos SwimmingAnimal y WalkingAnimal heredando de Animal.... entonces ahi que? porque SwimingAnimal puede nadar pero Animal no necesariamente entonces se romperia el principio

  • @code1866
    @code1866 2 ปีที่แล้ว +12

    Ojalá Midu hagas un video sobre arquitectura hexagonal en React(Aunque soy fan de Vue) 😍 usando librerías como Inversify y Inversify pro 👉👈

  • @adranuz
    @adranuz ปีที่แล้ว

    El ultimo ejercicio me fallo en esta linea
    creo que es por algo de la primera . algien tuvo el mismo error?
    ```ts
    export const useData = ({key, fetcher}: UseFetch): Response => {
    const { data, error, isValidating } = useSWR(key, fetcher);
    return { data, error, isValidating };
    };
    ```

  • @samuelpalacios9661
    @samuelpalacios9661 2 ปีที่แล้ว +7

    Midu, qué crack, justo en estos días estaba buscandos buenas prácticas de React :)

    • @midulive
      @midulive  2 ปีที่แล้ว +2

      Pues aquí tienes 5 principios! 🤗

  • @alexbo1942
    @alexbo1942 7 หลายเดือนก่อน +1

    eres un crack midu. Chevere

  • @julian_handpan
    @julian_handpan ปีที่แล้ว

    Los mismos internals del lenguaje no permiten que exista SOLID en JS, mucho menos en React...

  • @ITALO070495
    @ITALO070495 2 ปีที่แล้ว +2

    He aprendido mucho de programación con tua vídeos, gracias.

  • @jonathanshock1113
    @jonathanshock1113 7 หลายเดือนก่อน

    estuve mas de 5 horas. con un problema. hasta que encontre la buena practica a la hora de pasar props . soy muy noob . gracias

  • @juanpatron7784
    @juanpatron7784 6 หลายเดือนก่อน

    Muchas gracias midu, una duda el github de ese proyecto estará disponible

  • @cristiandavidescobarcastil8667
    @cristiandavidescobarcastil8667 2 ปีที่แล้ว +3

    En ningun otro lugar se encuentra algo con tanto nivel ... Muchas Gracias Midu

  • @AR7editing
    @AR7editing 2 ปีที่แล้ว +3

    Te quiero mucho midu

    • @midulive
      @midulive  2 ปีที่แล้ว +2

      🤗🤗🤗🤗

  • @JuanMunoz-po5fp
    @JuanMunoz-po5fp ปีที่แล้ว

    Liskov viene siendo como la continua aplicación de HOCs?

  • @CarlosGutierrez-pn5fb
    @CarlosGutierrez-pn5fb ปีที่แล้ว +1

    Es obvio que dominas el tema midu, pero SOLID es complejo, yo creo que te falto prepar un poco más tu discurso. No lo tomes a mal, está bien improvisar cuando se trata lo basico y fundamental pues de muchas formas ya se entiende, pero en lo avanzado hay que detenerse un poco más y no digresar tanto. Particularmente lo noté cuando explicas la sustitucion de Liskov y en la Inversión de dependencias.

    • @midulive
      @midulive  ปีที่แล้ว +2

      Estos vídeos son sacados de directos donde programamos sobre la marcha y vamos leyendo el chat. Te agradezco el feedback aunque creo que con los ejemplos prácticos de ambos quedaron bastante claros los conceptos.

  • @yovaxox
    @yovaxox 7 หลายเดือนก่อน

    El código de este vídeo está en algún repositorio?

  • @cesarcf1476
    @cesarcf1476 2 ปีที่แล้ว

    Hola, en el principio 'Dependency Inversion' uno de los fetcher no cumple con el contrato... tendria que devolver una promesa en lugar de un array -> Promise.resolve([{},{},{}])
    por lo demas contenido top!! gracias crack!

  • @new_artiko
    @new_artiko 2 ปีที่แล้ว +1

    holaaaaa alguno tendra los links que revisaron de medium!?

  • @arihantjain8347
    @arihantjain8347 ปีที่แล้ว

    What are you speaking? Gutka thook ke bolo

  • @CarlosRodriguez-pn7fe
    @CarlosRodriguez-pn7fe ปีที่แล้ว

    S
    *no aplica para vacantes de programadores.

  • @imsickboy9304
    @imsickboy9304 ปีที่แล้ว

    Alguien sabe qué theme tiene midu en su vs?

  • @freddy9292
    @freddy9292 6 หลายเดือนก่อน

    esta buernardo, hasta hoy creo que aplico tan solo (S,O,I) , igual supongo que porque no realizo proyectos grandes y no me senti que me faltara algo.
    gracias por la explicación

  • @pablotachella3912
    @pablotachella3912 2 ปีที่แล้ว +1

    Todo este conocimiento que compartís es invaluable 🧡🧡 quedé fascinado con este contenido, aprecio mucho lo que hacés por la comunidad

  • @jaimebaltodano7608
    @jaimebaltodano7608 2 ปีที่แล้ว

    Midu, si la programacion fuera NBA , que jugador serias: Lebon James, Stephen Curry, Kevin Durant, Luka Doncic, Giannis Antetokounmpo?

  • @ricko13
    @ricko13 2 ปีที่แล้ว

    pauso el video y vuelvo luego, lo dejo en el min 8:00

  • @santiconte3350
    @santiconte3350 ปีที่แล้ว +1

    Este video debería tener muchas mas vistas! Excelente contenido midulive

  • @1zeldalegend
    @1zeldalegend ปีที่แล้ว

    Gracias Midu, en serio :)

  • @chidoloco5557
    @chidoloco5557 2 ปีที่แล้ว

    Me podrías decir tu theme de visual code? gracias

  • @kanfor
    @kanfor ปีที่แล้ว

    Si la lógica de un componente es muy muy simple (que así debe ser, Back es quien debe complicarse la vida con la lógica) no compensa crear otro archivo y meterlo en otra carpeta con una tonelada de custom hooks. Creo que el principio KISS se debe imponer a todos los demás.

  • @crowvampire
    @crowvampire 11 หลายเดือนก่อน

    Excelente video, gracias por tu valioso tiempo en compartir esta joya de contenido. te ganaste un suscriptor. Estaría interesante que publicaras un video sobre Clean Code de Robert C. Martin, no sé si lo hayas leido

  • @ManuelDiaz-bu4eu
    @ManuelDiaz-bu4eu ปีที่แล้ว

    midu primeramente gracias por comportinos todo tu conocimiento, en relacion con estos 5 principios como recomendas relalizar los componenetes para un formaulario, yo tengo dos ideas de implementacion pero no se cual es la que se deba utlizar :
    1. Tener todos los componentes en un solo archivo y exportar uno a uno, es decir el input text, el input password, el input email, de esta forma segun lo que entendi estaria implmentando el principio de abierto/cerrado.
    2. Tener un archivo separado para cada componente aqui se aplicaria algo de este principio single responsibility principle.
    que nos recomendarias ?
    de nuevo muchas gracias

  • @JuanPerez-nx6hm
    @JuanPerez-nx6hm 7 หลายเดือนก่อน

    saludos hermano, admiro tu trabajo, Dios te siga bendiciendo a ti y tu familia, GRACIAS

  • @andresg9108
    @andresg9108 6 หลายเดือนก่อน

    Eres el mejor.

  • @danic8897
    @danic8897 ปีที่แล้ว +1

    Impresionante el contenido de este canal. De lo mejor en Español!! Felicidades y sigue así!

    • @midulive
      @midulive  ปีที่แล้ว +2

      Gracias, amigo!

  • @cesarsanchez350
    @cesarsanchez350 ปีที่แล้ว

    Hola excelente video
    Gracias x compartir tus conocimientos, un favor ….podrías usar letra mas grande ? Se difunta la visibilidad un poco , te agradeceremos mucho

  • @RodrigoMorenoIngenieria
    @RodrigoMorenoIngenieria ปีที่แล้ว

    Midu si seleccionas a una función o typo y le das control+. Y le das que lo separe a un nuevo archivo vscode hace el resto

  • @jeralsbarrera2119
    @jeralsbarrera2119 2 ปีที่แล้ว

    justo tenia 55:55 min libres para aprender algo nuevo. gracias midu

  • @yeraldev
    @yeraldev 2 ปีที่แล้ว +1

    al final el principio siempre es el mismo: DEPENDE 🤣🤣

    • @midulive
      @midulive  2 ปีที่แล้ว +1

      Ese es el mejor principio de todos. 🤣

  • @JuanPabloGazzarri
    @JuanPabloGazzarri 24 วันที่ผ่านมา

    graciasss

  • @juanpablogazzarri6874
    @juanpablogazzarri6874 หลายเดือนก่อน

    graciasss

  • @gaxrod
    @gaxrod 2 ปีที่แล้ว

    Excelente video!. De esos que seguro vale la pena ver varias veces en distintas oportunidades para siempre tenerlo fresco. Gracias miduuu!!!

  • @ignacioeifersucht9896
    @ignacioeifersucht9896 2 ปีที่แล้ว

    Me alegra mucho que hagas un video sobre este toma Midu, un placer siempre ver tus videos. Saludos desde Argentina!

  • @patrickanthonylazocolque701
    @patrickanthonylazocolque701 2 ปีที่แล้ว

    otra cosita

  • @luismasuarez1381
    @luismasuarez1381 2 ปีที่แล้ว

    Hola me gustaria tener tu setup de vscode, podrias dejar una lista o algo para hacerlo??? Gracias

  • @GusGabriel
    @GusGabriel 2 ปีที่แล้ว

    Muchas gracias por compartir, excelente como siempre. Saludos desde México.

  • @kamens793
    @kamens793 2 ปีที่แล้ว +3

    Hahaha justo he estado intentando aprender SOLID, que grande Midu, cuando sea grande quiero ser como tú

    • @midulive
      @midulive  2 ปีที่แล้ว +2

      Perfect timing!!!! :)

  • @ivanavilaalmanza
    @ivanavilaalmanza 2 ปีที่แล้ว

    Muy buen video, muchas gracias! sería posible tener la url del repo?

  • @MrJuanfil
    @MrJuanfil ปีที่แล้ว

    Open close tambein podria ser con una render function? no?

  • @juanmanuelchico
    @juanmanuelchico 2 ปีที่แล้ว

    El de midu es el mejor contenido de los ultimos años!

  • @Deus-lo-Vuilt
    @Deus-lo-Vuilt 2 ปีที่แล้ว

    Gracias midu , me sirve mucho tu material de js y react , un saludo

  • @vladyslavkuchmenko3940
    @vladyslavkuchmenko3940 ปีที่แล้ว

    El video tuyo que mas me ha gustado hasta el momento xD

  • @JoseLuis-yl8vs
    @JoseLuis-yl8vs ปีที่แล้ว

    Se hizo canon lo de dedicarse solo a contenido , esperamos el video con test y solid

  • @ivanjosephgamboasanchez1158
    @ivanjosephgamboasanchez1158 2 ปีที่แล้ว

    Alguien sabe que fuente de letra usa midu en el vscode?

  • @diegounanue
    @diegounanue ปีที่แล้ว

    Tengo que hacer una entrevista, donde me dan tres ejercicios en react, donde te dan 20 min y tienes que hacer un code review: encontrando bugs, y performance issues. Seria super interesante porque muchas empresas estan dando como ejercicio, no desarrollar una app, imagino por la ia, sino te dan una app y tienes que completar el código. O hacer un code review. Soy bastante malo para hacer code review. Y estaria bueno como video, para aprender y de paso encontrar bugs y performance issues.

    • @midulive
      @midulive  ปีที่แล้ว +1

      Puedes hacerlo en 10 minutos con ChatGPT 🤪

    • @diegounanue
      @diegounanue ปีที่แล้ว

      @@midulive si, pero estaria bueno para aprender, de alguien como vos

  • @NicolasCavallin
    @NicolasCavallin ปีที่แล้ว

    Que educador de la hostia, Midu!

  • @andresfelipearboledalondon268
    @andresfelipearboledalondon268 2 ปีที่แล้ว

    Crack!

  • @nelsondavidmontanobarajas9199
    @nelsondavidmontanobarajas9199 2 ปีที่แล้ว

    llevo esperando como 6 meses este vídeo, traere palomitas.

  • @GersonMontenegro
    @GersonMontenegro ปีที่แล้ว

    SRP: 1:14
    OCP: 15:34
    LSP: 30:07
    ISP: 36:09
    DIP: 45:55

  • @kmylodarkstar2253
    @kmylodarkstar2253 3 หลายเดือนก่อน

    apropcalipse

    • @kmylodarkstar2253
      @kmylodarkstar2253 3 หลายเดือนก่อน

      muy lindo video midu esto es la verdad de la milanesa como dicen acá en Argentina, me como todo el tiempo pensando esto y como hacer composición de componentes, etc. Despues lo mismo de como implementar los componentes de acuerdo con librerias de terceros, donde van los datos, el/los estados, etc

  • @martintorres5719
    @martintorres5719 2 ปีที่แล้ว

    Genial contenido como siempre miguel, un abrazo grande desde argentina!!

    • @midulive
      @midulive  2 ปีที่แล้ว +1

      Gracias! Saludos!!!

  • @Daniel-jb5yp
    @Daniel-jb5yp 2 ปีที่แล้ว

    Midu tendrá cursos de javascript, typescript y react?

    • @midulive
      @midulive  2 ปีที่แล้ว +1

      En midu.link/bootcamp tienes todo ese contenido y más

  • @nachomm111
    @nachomm111 2 ปีที่แล้ว

    Este video vale ORO!

  • @elkinmejia1593
    @elkinmejia1593 2 ปีที่แล้ว

    Hace unos días estaba leyendo ese mismo artículo que muestras en el video, lo entendí por completo y estoy empezando a tratar de mantener el código bajo esos mismos conceptos. Me parece increíble que estando justamente en estos momentos leyendo temas relacionados a SOLID encontrar este video con el mismo artículo. Qué buen contenido!:)

    • @marcelojuancabreragutierre2460
      @marcelojuancabreragutierre2460 2 ปีที่แล้ว +1

      Te parece increíble?, enserio?. Si hoy en día todo esta lleno de rastreadores desde navegadores, apps de tu teléfono asta IDES y editores de código. Que inocente!!! y todos muy felices alimentando al verdugo.

    • @elkinmejia1593
      @elkinmejia1593 2 ปีที่แล้ว

      @@marcelojuancabreragutierre2460 JAJAJAJAJA uso navegadores sin rastreadores, tampoco soy de aceptar cookies por eso digo que me parece increíble, sigo a midu y estaba esperando que subiera algo relacionado:)

  • @jaimebaltodano7608
    @jaimebaltodano7608 2 ปีที่แล้ว

    👏👏👏👏👏👏👏

  • @matiasaramayo2122
    @matiasaramayo2122 ปีที่แล้ว

    Que maravilla este video, cada segundo vale oro

    • @midulive
      @midulive  ปีที่แล้ว +1

      Mil gracias! :)

  • @SuichiMinamino
    @SuichiMinamino ปีที่แล้ว +1

    Excelente midu!
    solo una aclaración en lo de Liskov sustitution, el reemplazo que se DEBE poder hacer es al reves de lo que se dice en el video.
    DEBERIAS PODER reemplazar cualquier instancia del Button (Superclase) por una instancia del RedButton (subclase) y que nada se rompa :D
    al reves no tiene tanto sentido, porque en la subclase siempre puede va a haber comportamientos que la superclase no conoce.

  • @santiagotrujillo7101
    @santiagotrujillo7101 2 ปีที่แล้ว

    sigues rompiendo los principios es mejor tener separado por archivos

    • @midulive
      @midulive  2 ปีที่แล้ว +1

      Los principios no tienen nada que ver con la separación en archivos. Lo explico en el vídeo.

  • @nxx.p
    @nxx.p 2 ปีที่แล้ว +3

    Muy muy bueno. Fan de los videos de refactoring :)

    • @midulive
      @midulive  2 ปีที่แล้ว +1

      Muchas gracias!!!