Curso C#. Clases abstractas II. Vídeo 53

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ก.ย. 2024
  • Pasamos a código lo explicado en el vídeo anterior con el objetivo de ver la sintaxis de las clases y métodos abstractos.
    Para más cursos, ejercicios y manuales visita: www.pildorasinformaticas.es

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

  • @mnl1
    @mnl1 5 ปีที่แล้ว +16

    Gracias por añadir el cuadro esquema mientras escribías el código, ha sido muy instructivo y se ha entendido mucho mejor. Ha sido una muy buena idea. He visto el vídeo 2 veces para afianzar los conocimientos y cuanto más lo veo, más lo entiendo. Eres un Crack!! Lo haces muy sencillo de entender. Mi Gracias Juan!!

  • @alejandrovasquez6751
    @alejandrovasquez6751 5 ปีที่แล้ว +8

    A medida que avanzamos se me hace más fácil entenderlo. Un millón de gracias por el tiempo que se toma en desarrollar estas clases!

    • @pildorasinformaticas
      @pildorasinformaticas  5 ปีที่แล้ว +9

      Gracias a ti por el comentario y por seguir mis cursos. Un saludo!

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

    Por si no entendieron la diferencias entre interfaces y clases abstractas, aquí les dejo un resumen que hice para poder entenderlo mejor:
    "Las clases abstractas son clases que no pueden ser instanciadas, sino solo heredadas, las clases abstractas son muy parecidas a las interfaces, solo que estas pueden tener métodos abstractos (que no se programan, sino que se definen nada más para ser reescritos y programados luego), métodos propios, y propiedades. Las clases abstractas pueden servir como plantilla para clases hijas al igual que una interface
    Mientras que una interface solo puede tener métodos
    Diferencias entre clase abstracta y interface:
    - Una clase solo puede heredar 1 clase abstracta (o normal), pero multiples interfaces
    - Una interface solo puede tener métodos, mientras que la clase abstracta tiene metodos, propiedades y métodos abstractos
    - Una clase abstracta, puede heredar métodos por defecto a clases hijas y también heredar propiedades"
    Si hay algo mal pueden decirme para corregirme, espero les pueda servir!

  • @rctmac
    @rctmac 5 ปีที่แล้ว +8

    Muy bien ahora a codear. Excelente explicación sobre las clases abstractas, muchas gracias maestro Juan. Saludos

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

    Muy grande este señor.

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

    Todo lo que haces el proyecto de mamíferos, yo lo implemento en el proyecto de vehículos! Me tocó crear una clase "máquina" y crear un método que se llame "modelo" y bueno ya mi programa crea aviones, carros, motos y también robots jajaja xD muy divertido.

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

    Excelente Juan! Un lujo! Muchas gracias!!!!

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

    Nota: Una clase abstracta no puede ser instanciada porque se necesita que exista de otra clase que herede de la misma y esta segunda clase es la que podria ser instanciada... por ejemplo: No podemos crear un objeto "vehiculo" asi sin mas, sin saber que tipo de vehiculo es... Lo que sí podemos es instanciar un objeto coche o avion que sí son objetos concretos de tipo vehiculo. Esta es la logica de una clase abtracta llamada vehiculo: Solo sirve para dar cualidades y funciones que son comunes a diferenetes tipos de objetos que comparten una relacion. Espero se entienda.

  • @_xeralityc
    @_xeralityc 3 ปีที่แล้ว

    porque no le dan mas likeees. Es un curso muy buenooooo. Sin este curso no pudiera poder empecar a programar en C#

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

    Juan, excelente tu método para desarrollar el curso, es top en las plataformas digitales, en mi caso, soy ingeniero de software, estuve programando varios años, con el tiempo ya hago labores de gestión de proyectos y ahora en forma paralela, estoy creando una empresa y necesito volver a programar, para fabricar el producto y como recién empezamos ahorrarnos costos.

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

      Gracias por el comentario. Te deseo mucha suerte en tu proyecto. Gente como tú es más necesaria que nunca en estos tiempos. Un saludo!

  • @jacobgodinez1162
    @jacobgodinez1162 4 ปีที่แล้ว

    Que excelente explicación de la herencia, las interfaces y las clases abstractas, muchas gracias!!!

  • @TLWNelo
    @TLWNelo 4 ปีที่แล้ว

    Muchas gracias por todo el conocimiento gratuito que ofreces juan.

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

    Muy buen video. Gracias

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

    gracias por el video xD, se te escucho muy animado el dia de hoy juan xD, eso es bueno, ya que para estas cosas hay que tener mucha paciencia y cariño. Como me gustaria que a nosotros los programadores nos pagaran al mismo nivel que los lideres de proyecto o aquellos que se encargan de la documentacion ,-,. No entiendo como es que uno de los trabajos mas pesados en este campo, sea el que menos mejor se pague en una empresa de desarrollo. En fin, un saludo. Ya sabes, no suelo comentar xD, pero siempre veo tus videos que son de gran calidad.

  • @mnl1
    @mnl1 5 ปีที่แล้ว

    Fantástico Juan!!!

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

    Tremendo Profesor

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

    Muy buenos videos, muy bien explicado.
    Sería genial que hicieras un curso de Javascript!

    • @pildorasinformaticas
      @pildorasinformaticas  5 ปีที่แล้ว

      Aquí lo tienes: th-cam.com/play/PLU8oAlHdN5BmpobVmj1IlneKlVLJ84TID.html
      Un saludo!

  • @luisochoa4628
    @luisochoa4628 5 ปีที่แล้ว

    El mejor profesor del mundo de la informática, cuantos videos aprox tendrá este Curso?

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

    Lo entiendo. Es últil para dirigir un equipo de programadores. Pero no encuentro aún la utilidad cuando sólo hay un único programador. Ya veré, a lo mejor uso las clases abstarctas como forma de estructuración de entidades, como una especie de clasificación en ramas. Y en cuanto a interfaces, pues puede que sea prácticamente lo mismo, pues creo un conjunto de interfaces en un directorio (package, si es posible) que sé que serán necesarias para un conjunto de diferentes clases. Ya veré.

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

    Gracias

  • @juanmanuelgelmini4056
    @juanmanuelgelmini4056 5 ปีที่แล้ว

    Te debemos tanto....!!!

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

    hola, me parece un excelete ejemplo, pero me gustaría tener acceso al código completo, se podría?

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

    Hola Juan un saludo desde Honduras muy buen video te felicito sigue adelante tengo ina pregunta en los métodos abstractos se ve muy claro el polimorfismo o estoy equivocado y he entendido mal el concepto del polimorfismo

  • @Fernando_SC
    @Fernando_SC 4 ปีที่แล้ว +5

    "Hay humanos que piensan menos que una lagartija" jajaja
    Me recuerda a los que niegan que el Covid 19 existe

  • @Inkus86
    @Inkus86 4 ปีที่แล้ว

    Excelente explicacion!

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

    Juan muchísimas gracias por tus vídeos son excelentes.
    Quisiera saber si vas a hacer un curso de SQL Server. Y también como usar C# con SQL Server

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

      Cómo usar C# con SQL Server pretendo verlo en este curso. Un curso de SQL Server en el futuro (pero no se cuándo). Un saludo!

    • @weslinmartinez1802
      @weslinmartinez1802 5 ปีที่แล้ว

      diste en el clavo.

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

    Enhorabuena por el curso, me está aclarando muchos conceptos. Tengo una duda sobre la utilización de clases abstractas, es una buena práctica crear varias clases abstractas para extraer grupos de métodos, para como objetivo, no tener una clase con muchos métodos y tener mejor organizado el código? es una duda que siempre he tenido...

  • @cosasdecompu5597
    @cosasdecompu5597 3 ปีที่แล้ว

    8:52 adivine que ibas a poner juancho

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

    cual seria la diferencia del abstrac del get nombre al virtual para los metodos de respirar?

  • @CesarSanchez-uy9nt
    @CesarSanchez-uy9nt 5 ปีที่แล้ว +1

    Hola, Sus videos estan muy bien explicados,yo voy empezando en esta area, y debido a q se le han hecho modificaciones
    al mismo programa no he logrado ver el error de mi programa y no lo puedo correr. y quisiera pedirle un favor: podria
    deslizar el scroll del raton para visualizar el codigo cuando termine el programa?

  • @estebanf1490
    @estebanf1490 3 ปีที่แล้ว

    creo que esta es una solución para evitar que la clase sea abstracta y también reduciría líneas de código, también se puede poner el nombre del ser vivo en la clase animal para evitar declarar esta variable en la clase mamíferos y reptiles y en el constructor de las clases mamífero y reptil haces que la especie tenga el nombre correspondiente, puede que esta solución no aplique a métodos de mayor complejidad (Agradecería que me corrijan si esta solución es incorrecta)
    class animal{
    protected string nombreSerVivo;
    protected string especie;
    public void GetNombre(){
    Console.WriteLine($"El nombre del {especie} es {nombreSerVivo}");
    }
    }
    class mamifero{
    public mamifero(string nombreSerVivo)
    {
    especie = "mamifero";
    this.nombreSerVivo = nombreSerVivo;
    }
    }

  • @jorgefuentes7222
    @jorgefuentes7222 3 ปีที่แล้ว

    El Lagarto juancho, que recuerdos.

  • @michaelbryangchevezangulo6052
    @michaelbryangchevezangulo6052 4 ปีที่แล้ว

    La unica duda que me queda con respecto a las clase abstractas para que sirven y cuando usarlas saludos y gracias

  • @manuelsantiagoojedaperez2180
    @manuelsantiagoojedaperez2180 4 ปีที่แล้ว

    Hola Juan, queria preguntar si no es preferible mover la variable nombreSerVivo a la clase animales y cambiar el modificador de acceso a protected, ya que es logico que todos los animales tengan un nombre. Saludos de un Argentino en Australia

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

    Tengo una pregunta, ¿las clases abstractas puede haber más de dos?, o no tendría sentido hacer más de dos.
    Saludos, Eres un buen profesor.

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

      Creo que si pueden haber dos y tiene sentido. Podrias hacer otra clase abstract "SeresVivos" que herede a "Animales" y luego esta a "Mamiferos" y "Reptiles" y el resto de clases como lo ha hecho en este video.

  • @juansebastianrg
    @juansebastianrg 5 ปีที่แล้ว

    Primero que todo gracias por compartir sus conocimientos de programación con nosotros. Tengo una pregunta. Se podría decir que la diferencia que hay entre una interface y una clase abstract es que dentro de la clase abstract se pueden desarrollar los metodos? o ay alguna otra?

    • @LeninLinares007
      @LeninLinares007 4 ปีที่แล้ว

      El Overwrite en las interface son OBLIGATORIO,.. en la clase Abstract NO

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

    ¿Soy la única persona que no solo se ve los videos, si no que se hace apuntes?

    • @oscargm1979
      @oscargm1979 4 ปีที่แล้ว

      Ni de coña xd

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

      yo al final de cada clase trato de desarrollar el codigo por mi parte y si no puedo vuelvo a ver la clase! y hago repasos semanales, trato de explicar el codigo a la par de cada linea de codigo con un comentario explicando que hace el codigo escrito.

  • @ErmogenesRodriguez
    @ErmogenesRodriguez 5 ปีที่แล้ว

    bueniiiiiiiisimos

  • @nahuelvazquez2241
    @nahuelvazquez2241 4 ปีที่แล้ว

    entonces en vez de utilizar abstract, pq no utilizo una clase normal con metodos virtual y override? asumo qeu abstract tiene alguna utilidad mas a parte de eso

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

      La diferencia es que sirve para obligar al programador a desarrollar los métodos abstractos en las clases que lo heredan, es una clase de interface

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

    👀

  • @agustin._7931
    @agustin._7931 3 ปีที่แล้ว

    No sería lo mismo crear una clase normal con métodos virtuales?

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

      No sería lo mismo Agustin, lo que pasa que una clase abstracta no se puede instanciar, además que un método virtual no es obligatorio, decides si lo implementas o no, súmale que los métodos virtuales ya están desarrollados y pueden tener cierto comportamiento, hasta que los sobreescribes es que cambia en tu otro método, espero que esto sirva de ayuda

    • @agustin._7931
      @agustin._7931 3 ปีที่แล้ว

      @@javisl1 Si después de comentar esto me puse a leer y entendí la diferencia, gracias

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

    Primer comentario😂💪🏼

  • @osubarudo5041
    @osubarudo5041 5 ปีที่แล้ว

    Like por el Lagarto Juancho!!!!

  • @oscargm1979
    @oscargm1979 4 ปีที่แล้ว

    yo le llamé JuanAntonia a la lagartija...