No video

Principios SOLID: Principio de Abierto/Cerrado OCP

  Рет қаралды 22,878

hdeleon.net

hdeleon.net

Күн бұрын

En este video te mostrare que es el principio de abierto/cerrado, donde las entidades como clases deben estar cerradas para modificación pero abiertas para extensión.
Si quieres apoyarme y darme para una cerveza puedes hacerlo por aquí: paypal.me/Hecto...
Puedes apoyarme desde 0.5 USD al mes uniéndote como miembro al canal aquí: / @hdeleonnet
Todos los videos de la serie SOLID: • Principios SOLID: El P...
Todos mis podcasts: • Podcast #1 - ¿Cuál es ...
Curso de MVC .Net: • Curso de MVC .Net C#| ...
Curso de MVC Api .Net: • Curso de MVC API .Net ...
Curso de facturación electrónica en c# .Net: • ¿Cómo convertir archiv...
Todos mis videos sobre facturación electrónica: • ¿Cómo convertir archiv...
La falta de respeto tanto a mí como a cualquier otra persona y el SPAM son razones de bloqueo en mi canal.
"Copyright Disclaimer Under Section 107 of the Copyright Act 1976, allowance is made for "fair use" for purposes such as criticism, comment, news reporting, teaching, scholarship, and research. Fair use is a use permitted by copyright statute that might otherwise be infringing. Non-profit, educational or personal use tips the balance in favor of fair use"
---------------------------------------------------------------------------------------------------------------
Sigueme en twitter ⇒ / powerhdeleon
Sigueme en facebook ⇒ / hdeleon666
Mi Sitio web ⇒ hdeleon.net
#solid #programación #ingenieríaDeSoftware

Пікірлер: 60
@hdeleonnet
@hdeleonnet 3 жыл бұрын
Si te ha gustado el video puedes apoyarme dejándome un pulgar arriba y compartir en tus redes sociales ¡Muchas gracias! Todos los videos de esta serie: kzbin.info/www/bejne/pni8eZiPnsxkb7M&ab_channel=hdeleon.net
@juario_ok
@juario_ok 3 жыл бұрын
El día en que los ejemplos no sean con cervezas va a indicar que algo no anda bien. Muy bueno tus vídeos!
@DjMostreck
@DjMostreck 3 жыл бұрын
De tantos proyectos que ejemplificas con cervezas, me he vuelto cervecero.
@antonycarrilloluna8080
@antonycarrilloluna8080 3 жыл бұрын
🤣🤣
@hdeleonnet
@hdeleonnet 3 жыл бұрын
Pero si he hablado también de agua en este video
@DjMostreck
@DjMostreck 3 жыл бұрын
@@hdeleonnet a eso me refería, genera estrés no ver el ejemplo con cervezas.
@veronicaoviedo3524
@veronicaoviedo3524 3 жыл бұрын
Habia visto varios vídeos al respecto, pero el tuyo me ayudo mas, claro sencillo y conciso. Buen trabajo!
@cristiancalichio5335
@cristiancalichio5335 2 жыл бұрын
Muchas gracias Héctor !!!, estoy haciendo un repaso de teoría y valoro muchos tus videos. 0:5:52 Aportar que desde "8", es que se pueden implementar los métodos en las interfaces. Saludos desde Argentina!!!
@franklinrodriguez5427
@franklinrodriguez5427 4 ай бұрын
Genial hector gracias por la explicación
@robertosebastian3377
@robertosebastian3377 Ай бұрын
Que buenos videos seguire viendo los otros principios
@leticiavilla539
@leticiavilla539 Жыл бұрын
Gracias Hector!👏
@adriancruz7196
@adriancruz7196 3 жыл бұрын
Saludos Hector, gracias por tomarte el tiempo de responder espero salga pronto el curso que tienes planeado sin dudarlo lo compro.
@hdeleonnet
@hdeleonnet 3 жыл бұрын
Gracias Adrian
@leonardonorambuena2172
@leonardonorambuena2172 3 жыл бұрын
@@hdeleonnet El curso está pensado en .NET?
@nelson3391
@nelson3391 3 жыл бұрын
Excelente explicación. Muchas gracias.
@jairofernandez9920
@jairofernandez9920 2 жыл бұрын
Finalmente entendí ese principio, genial, gracias por tu ayuda!
@duvgame6776
@duvgame6776 2 жыл бұрын
Hola @Hedleon, el video quedo muy bien explicado, sin embargo quisiera ver o saber como se implementa el método GetTotal() desde el main, que es como lo usuaria el usuario según la bebida que el elija
@jalexandercabanillas2088
@jalexandercabanillas2088 2 жыл бұрын
Estoy igual que tu... He visto que en muchos videos usan ejemplos similares pero no muestran cómo se invoca ese método. Ya lo solucionaste? Me generan estas dudas: 1. Donde antes habían una serie de validaciones en la clase Invoice y metodo getTotal, simplemente se cambió por una iteración de la interfaz. Cómo hace la lógica para validar el tipo de bebida? donde antes era drink.Type == "Agua" cómo hace para entender que ahora Agua es una clase e irse por esa opción? 2. Cómo llamas el método getTotal? Cuando varias clases están usando una interfaz, se crea una especie de arreglo con todas esas clases y simplemente la pasas a ese método? Por favor ayuda!
@Emi-fg7fn
@Emi-fg7fn 7 ай бұрын
@@jalexandercabanillas2088 Para el caso 2, según entiendo lo que harías seria crear una instancia de una bebida, cargarle los datos necesarios y hacer agua.GetTotal(); Para el primer caso creo que si quisieras obtener el tipo podrias utilizar if(agua.GetType()==typeOf(AGUAClass))
@robertogzm
@robertogzm 6 ай бұрын
muy buena tu explicación mano
@pollo5422
@pollo5422 3 жыл бұрын
Héctor ¡Excelente ejemplo!, gracias por el contenido
@jonathanvanegas5546
@jonathanvanegas5546 2 жыл бұрын
Cuando termina el video y comienza a sonar canción, comienzo a mover la cabeza de arriba a abajo 🤘 🤘
@hbkhum
@hbkhum 3 жыл бұрын
Excelente aporte Hecor te felicito deberias sacar los siguientes yo le espero que lo expliques con cervezas
@correajoel
@correajoel 3 жыл бұрын
excelente!, de verdad explicas muuuy bien.
@iamkiwiman
@iamkiwiman 2 ай бұрын
Muy bueno
@jorgefernandez559
@jorgefernandez559 Жыл бұрын
grande hd Leon
@dannycardenas9457
@dannycardenas9457 3 жыл бұрын
Exelente video Héctor estoy ancioso de tu siguiente video, sigue así
@jalexandercabanillas2088
@jalexandercabanillas2088 2 жыл бұрын
Hola! Me gustó mucho este video y estoy intentando aplicarlo pero llego a un punto en el que no se cómo y no entiendo detrás cómo funciona estas Interfaces: 1. Donde antes habían una serie de validaciones en la clase Invoice y metodo getTotal, simplemente se cambió por una iteración de la interfaz. Cómo hace la lógica para validar el tipo de bebida? donde antes era drink.Type == "Agua" cómo hace para entender que ahora Agua es una clase e irse por esa opción? 2. Cómo llamas el método getTotal? Cuando varias clases están usando una interfaz, se crea una especie de arreglo con todas esas clases y simplemente la pasas a ese método? He visto un par de ejemplos similares, pero nunca muestran cómo se llama lo que en tu ejemplo sería el método getTotal. La única manera que veo es hacer una validación antes de llegar ahí, pero daría lo mismo que como estaba al principio. Por favor ayuda!
@carlosandresrodriguezsilva2576
@carlosandresrodriguezsilva2576 2 жыл бұрын
Hola, te puedo responder el 1: El compilador sabe a que metodo preciso de la clase esta llamando, ya que todas esas clases heredan de la misma interfaz. Miralo así como una forma de polimorfismo... Obviamente cuando se le pasa la lista IEnumerable, contiene los tipos de bebida sin error porque el tipo de la lista IEnumerable todos los tipos sean agua, bebida azucar o bebida alcoholica, heredan de esta. El 2: Si es asi como lo planteas, si es una aplicacion de compras, pues la idea es que puedas añadir bebidas y comprar mas de una y mas de un tipo, exactamente la guardas en una lista NO UN ARREGLO de tipo IEnumerable y las pasas al metodo gettotal ;) saludos
@All-tn4df
@All-tn4df 2 жыл бұрын
Que grande eres
@DonecEris
@DonecEris 3 жыл бұрын
Esto no me la sabia. GRACIAS
@leah9227
@leah9227 3 жыл бұрын
Dude, tus videos estan muy buenos. ¡Excelente contenido y canal!
@alexandrohdez3982
@alexandrohdez3982 3 жыл бұрын
muy bueno como siempre bro
@darkavmaster6461
@darkavmaster6461 3 жыл бұрын
Me volvío loco al ver que podrías implementar la interfaz, jejeje ya me muevo a c#9
@AndyPeralta
@AndyPeralta 2 жыл бұрын
Muy buen ejemplo, pero solo estas sumando el monto del impuesto, no el monto total.
@anarkistaanarkiko
@anarkistaanarkiko Жыл бұрын
Qué opinas de tener una clase Base que implemente la interface y las demás clases hereden de la base? o eso es parte de otro principio ? ejemplo: class BaseDrink : IDrink { public string Name { get; set; } public decimal Price { get; set; } public decimal Invoice { get; set; } public virtual decimal GetPrice() { return Price * Invoice; } } class Alcohol : BaseDrink { public decimal Promo { get; set; } public override decimal GetPrice() { return base.GetPrice() - Promo; } }
@lisandrotoranzo7837
@lisandrotoranzo7837 Жыл бұрын
lo mismo pense, vi mucho codigo repetido que se podia solucionar con herencia
@Cristian-wx5yp
@Cristian-wx5yp 3 жыл бұрын
Buen video, pero me cuesta vincular estos conceptos y como guardar la información en la base de datos. Podrías hacer un ejemplo guardando en una base de datos? Gracias
@jkf16m96
@jkf16m96 2 жыл бұрын
Al menos por experiencia te recomiendo mantener las clases sin conexión a la base de datos. Y que para guardar, lo hagas en clases de primer nivel, por ejemplo en el método Main o si es una aplicación REST, en cada endpoint al menos.
@estebangomez8425
@estebangomez8425 3 жыл бұрын
La neta te la rifas !, buen video !
@alf1712
@alf1712 2 жыл бұрын
Para cuando La I y la D xD saludos, excelentes videos
@hdeleonnet
@hdeleonnet 2 жыл бұрын
Hoy sale la I
@alejandrovillanueva3065
@alejandrovillanueva3065 3 жыл бұрын
Buwn video bro!
@alvaromorales3310
@alvaromorales3310 2 жыл бұрын
Si no estoy mal, el patrón de diseño state está basado en este principio, cierto?
@victoraguileralara
@victoraguileralara 2 жыл бұрын
¿Podríamos decir que este principio también corresponde al patrón Strategy?
@hdeleonnet
@hdeleonnet 2 жыл бұрын
Los patrones respetan solid
@matonolo
@matonolo 3 жыл бұрын
Podrías hacerlo pero con un paradigma funcional porfavor? Saludos.
@DarknessMA
@DarknessMA 3 жыл бұрын
Excelente (y)
@veronicaoviedo3524
@veronicaoviedo3524 3 жыл бұрын
Esperando el sig video de Liskov
@JosueRomero
@JosueRomero 10 ай бұрын
Porque preferiste decimal en lugar de double?
@aleal3279
@aleal3279 3 жыл бұрын
Gracias por el video, cuando sacarás el que será de paga?
@hdeleonnet
@hdeleonnet 3 жыл бұрын
Siguiente semana
@manuelalejandroriveramateo8178
@manuelalejandroriveramateo8178 2 жыл бұрын
SOLID y MVC van de la mano o si se utiliza uno no se usa el otro. Ahora mismo estoy aprendiendo solid, pero eh notado que casi siempre se habla de mvc
@guillendev
@guillendev Жыл бұрын
Impuesto en inglés es Tax, igual se entiende, creo por ahí solo se te fue. Gracias buen video.
@hdeleonnet
@hdeleonnet Жыл бұрын
Si, lo capte hasta que subí el video. Gracias
@javilili100
@javilili100 Жыл бұрын
Ame cuando dijiste quitamos esta porqueria
@AsceGomez
@AsceGomez 3 жыл бұрын
necesito tu ayuda
@AsceGomez
@AsceGomez 3 жыл бұрын
hola
@estapadrisimo
@estapadrisimo 5 ай бұрын
Si no se entiende con este ejemplo ya es caso perdido XD.
Principios SOLID: Principio de Sustitución de Liskov LSP
15:49
hdeleon.net
Рет қаралды 22 М.
Ik Heb Aardbeien Gemaakt Van Kip🍓🐔😋
00:41
Cool Tool SHORTS Netherlands
Рет қаралды 9 МЛН
Matching Picture Challenge with Alfredo Larin's family! 👍
00:37
BigSchool
Рет қаралды 36 МЛН
SOLID: Principio Abierto-Cerrado (OCP)
10:54
makigas
Рет қаралды 2,6 М.
SOLID Principles in JavaScript
22:00
Carlos Azaustre - Aprende JavaScript
Рет қаралды 30 М.
Principios SOLID: Principio de Inversión de Dependencia DIP
16:20
Por qué no se entiende la S de SOLID: Principio de Responsabilidad Única
33:35
CodelyTV - Redescubre la programación
Рет қаралды 23 М.
Principios SOLID: El Principio de Responsabilidad Única SRP
15:59
Los Principios SOLID explicados ¡Con ejemplos! 100% PRÁCTICO
24:24
The Coder Cave esp
Рет қаралды 47 М.
¿Qué diablos es Task en C# .Net? Programación asíncrona
14:40