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. 🤩
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
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
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.
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!:)
@@Pepelui2460 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:)
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
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
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?
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
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.
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.
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!
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
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.
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
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 }; }; ```
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.
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.
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
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. 🤩
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
Necesitamos más comentarios como este, muchas gracias.
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
Me vino super bien este video porque siempre quise entender SOLID pero me costaba. Verlo aplicado a React me sirvió un montón, gracias
Qué bien que te haya servido Emiliano!!!
el emi
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.
Impresionante el contenido de este canal. De lo mejor en Español!! Felicidades y sigue así!
Gracias, amigo!
He aprendido mucho de programación con tua vídeos, gracias.
En ningun otro lugar se encuentra algo con tanto nivel ... Muchas Gracias Midu
Midu, qué crack, justo en estos días estaba buscandos buenas prácticas de React :)
Pues aquí tienes 5 principios! 🤗
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!
Todo este conocimiento que compartís es invaluable 🧡🧡 quedé fascinado con este contenido, aprecio mucho lo que hacés por la comunidad
Este video debería tener muchas mas vistas! Excelente contenido midulive
El de midu es el mejor contenido de los ultimos años!
Me alegra mucho que hagas un video sobre este toma Midu, un placer siempre ver tus videos. Saludos desde Argentina!
Buena Crack, en tu ultimo directo en inst preguntaba sobre buenas practicas y ya sacas el video ❤
🤙 ¿Has visto? Esto sí que es nivel, eh :P
saludos hermano, admiro tu trabajo, Dios te siga bendiciendo a ti y tu familia, GRACIAS
Gracias por el video. A la espera del curso de nextjs 12 por acá💟
Muchas gracias por compartir, excelente como siempre. Saludos desde México.
Excelente video!. De esos que seguro vale la pena ver varias veces en distintas oportunidades para siempre tenerlo fresco. Gracias miduuu!!!
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!:)
@@Pepelui2460 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:)
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
Que maravilla este video, cada segundo vale oro
Mil gracias! :)
Se hizo canon lo de dedicarse solo a contenido , esperamos el video con test y solid
El video tuyo que mas me ha gustado hasta el momento xD
justo tenia 55:55 min libres para aprender algo nuevo. gracias midu
Genial contenido como siempre miguel, un abrazo grande desde argentina!!
Gracias! Saludos!!!
Más videos de este tipo, con ejercicios prácticos. Se interiorizan mejor los conceptos
Este video vale ORO!
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
Hahaha justo he estado intentando aprender SOLID, que grande Midu, cuando sea grande quiero ser como tú
Perfect timing!!!! :)
Gracias midu , me sirve mucho tu material de js y react , un saludo
llevo esperando como 6 meses este vídeo, traere palomitas.
Muchas gracias midu, una duda el github de ese proyecto estará disponible
eres un crack midu. Chevere
Por mas videos como este!!!
Que educador de la hostia, Midu!
"El día que me dedique solo al contenido le darémos cañita..." LLEGÓ EL DÍA 😈
estuve mas de 5 horas. con un problema. hasta que encontre la buena practica a la hora de pasar props . soy muy noob . gracias
Genio, de los mejores para aprender a programar, crack saludos de arg
Midu, te amo
🤗 Y yo a tiiiiiiii
Te quiero mucho midu
🤗🤗🤗🤗
Liskov viene siendo como la continua aplicación de HOCs?
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?
SRP: 1:14
OCP: 15:34
LSP: 30:07
ISP: 36:09
DIP: 45:55
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
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.
Gracias Midu, en serio :)
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.
Puedes hacerlo en 10 minutos con ChatGPT 🤪
@@midulive si, pero estaria bueno para aprender, de alguien como vos
Gracias midu!
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!
Eres el mejor.
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
Oro puro
Muchas gracias, Matias!!! 🤗
Open close tambein podria ser con una render function? no?
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
Muy buen video, muchas gracias! sería posible tener la url del repo?
Hola me gustaria tener tu setup de vscode, podrias dejar una lista o algo para hacerlo??? Gracias
👏👏👏👏👏👏👏
El código de este vídeo está en algún repositorio?
graciasss
Midu tendrá cursos de javascript, typescript y react?
En midu.link/bootcamp tienes todo ese contenido y más
Me podrías decir tu theme de visual code? gracias
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.
Alguien sabe que fuente de letra usa midu en el vscode?
Muy muy bueno. Fan de los videos de refactoring :)
Muchas gracias!!!
Midu, si la programacion fuera NBA , que jugador serias: Lebon James, Stephen Curry, Kevin Durant, Luka Doncic, Giannis Antetokounmpo?
Alguien sabe qué theme tiene midu en su vs?
Crack!
holaaaaa alguno tendra los links que revisaron de medium!?
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
pauso el video y vuelvo luego, lo dejo en el min 8:00
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 };
};
```
S
*no aplica para vacantes de programadores.
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.
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.
al final el principio siempre es el mismo: DEPENDE 🤣🤣
Ese es el mejor principio de todos. 🤣
14:36 JoJo's reference
Los mismos internals del lenguaje no permiten que exista SOLID en JS, mucho menos en React...
otra cosita
apropcalipse
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
What are you speaking? Gutka thook ke bolo
sigues rompiendo los principios es mejor tener separado por archivos
Los principios no tienen nada que ver con la separación en archivos. Lo explico en el vídeo.
graciasss