Tutorial Programación Orientada a Objetos en C# 22 - Polimorfismo

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

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

  • @sr.serious2345
    @sr.serious2345 4 ปีที่แล้ว +9

    De 30 vídeos que he visto sobre el tema, el tuyo es el único que me ha dejado claro y cristalino qué es Polimorfismo. Eres muy grande. Aquí tienes un nuevo suscriptor.

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

      Igual yo!!! tendo dos dias buscando un ejemplo que me pudiera ayudar a una tarea que estoy haciendo! y este creo que hizo que me queda mas claro el tema.

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

    Es increíble la vigencia que tienen estos videos aún 5 años después. C# se ha modernizado con su versión 10, ha relajado su sintaxis un poco con .net 6 y las instrucciones de nivel superior, pero los conceptos siguen siendo los mismos y los dejas más que claros con tus videos. Tercer curso suyo que veo, primero c# básico, luego el de POO y ahora POO en C#, y voy a por más. Gracias por su inmenso aporte. Pocos cursos cubren tanto los conceptos como los suyos.

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

    Este video me ha ayudado bastante, muchas gracias nico no pares de enseñar !

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

    Gracias todo muy claro

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

    Buena explicación

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

    Hola Profesor, primero felicitarlo por su canal, he aprendido muchísimo, mil gracias.
    Tengo una duda, ¿a nivel de código, conviene trabajar siempre las clases al mayor nivel de abstracción posible, es decir, apuntando todo al polimorfismo? dicho de otra forma ¿La forma correcta de abordar la POO en este caso es trabajar siempre con las clases base (de ser posible) y luego llamar a los métodos propios de las clases hijas mediante casting?
    Muchas gracias!!

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

      Hola, no necesariamente siempre tienes que ir con todo a polimorfismo. El analisis del problema y el diseño de clases que haces te van a indicar si usas herencia, polimorfismo o interfases. Realmente depende mucho del problema. En alguno no lo necesitaras, en otros si.

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

    excelente

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

    Muy Buenos Videos! se scucha bastante bajo de volumen.😐

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

    Profesor al inicio explica que se puede hacer con clases abstractas sería posible un ejemplo de esta forma? buenos videos Saludos

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

    muy bien ✔

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

    Like

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

    b dia sin estar utlizando la consola, no tendra este ejemplo para utilizar las formas de VB.... de antemano muchas gracias

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

      Hola! de VB no tengo contenido

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

    Termine la lista pero tengo una duda. Para ingresar valores por teclado, lo puedo hacer por métodos públicos para acceder a los atributos privados de la clase o desde el main puedo cargar datos a la clase a través de un constructor. Hay otras maneras de hacerlo desde el main?

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

      Puedes mandarlos en el constructor si es al momento de crear el objeto, si es despues lo que te conviene es usar propiedades o algun metodo de interfaz

  • @MaruVaqueros
    @MaruVaqueros 6 ปีที่แล้ว

    Una pregunta: ¿cuando hacemos miMascota = new CPerro() estamos haciendo casting?

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

      Hola!, no, no es casting. Tienes una variable miMascota que es del tipo CAnimal por lo que puede ser referenciada a cualquier instancia(objeto) que forme parte de su cadena de herencia. En ese caso la referencias a la instancia de CPerro que se crea en ese momento.
      Para casting necesitas indicar el tipo como quieres que temporalmente esa variable actue float r=c/(float)i
      En ese caso i siendo de tipo entero se toma temporalmente como flotante. Los tipos numericos tienen casting incorporados. En los otros tipos tenemos que ver si hay compatibilidad via la cadena de herencia o alguna conversion implicita o explicita que exista entre los tipos.

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

      Es cierto, muchas gracias.

  • @carlosxxj
    @carlosxxj 6 ปีที่แล้ว

    Cual es la diferencia entre mtdabstracto y mtdpolimorfismo

    • @nicosiored
      @nicosiored  6 ปีที่แล้ว +3

      En una clase abstracta la clase base tiene metodos que no implementa, y son responsabilidad de las clases hijas llevar a cabo la implementacion segun sus necesidades. Es decir que el concepto "abstracto" que colocas en la clase base se vuelve "concreto" en la implementacion de las hijas.
      En el polimorfismo tu tienes una variable que puede refenciarse a instancias de diferentes objetos, siempre y cuando estos objetos sean hijos de la clase que usas para esa variable. Si tienes la clase CAnimal y como hijas de ella CGato y CPerro, entonces la variable CAnimal mascota, puede actuar como CAnimal, CGato o CPerro segun se necesite.

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

    No hay un video sobre esto pero para personas que no saben nada de programacion orientada a objetos?

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

      Hay otra lista de reproduccion que es teorica en este mismo canal, puedes verla primero y ya luego regresar a esta que es la parte practica

  • @alejandrovergarav9913
    @alejandrovergarav9913 6 ปีที่แล้ว

    Buenos días Doctor hace poco leí un artículo cuestionando la POO, me gustaría mucho saber su opinión al respecto ya que sus videos están muy bien fundamentados para aplicar adecuadamente la POO, aquí le dejo el enlace: medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53?source=email-d3d2d1bb161c-1523292619729-digest.reader------0-49------------------a55641f22181-11§ionName=topic

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

      La POO es un paradigma excelente que ha servido mucho y tiene su lugar en el desarrollo de software. Pero en esta industria nada es estatico, ni siquiera los paradigmas. Es natural que cualquier paradigma tenga limitaciones y conforme las maquinas se hacen mas poderosas y los problemas a resolver mas complejos necesitemos nuevas formas de resolverlos. Ahora con el aumento de paralelismo y procesadores vectoriales pues otras herramientas se adaptan mas. No es como espantarse y desechar la POO, mas bien es saber que utilizar ante que problema

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

    Pasa el trabajo oiga