Curso C#. Colecciones II LinkedList. Vídeo 64

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

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

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

    Espero que este curso sea más largo que el de java con más de 100 horas, el más completo de internet y que toque temas muy avanzados.

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

      Yo honestamente espero que se introduzca en el curso un apartado sobre creacion de objetos 3d

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

    Excelente el llamado de atención a los que pretenden programar sin estudiar la documentación oficial. Yo personalmente complemento este curso con el libro Programming C# 8.0 de Ian Griffiths.

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

    la parte de pollo sin cabeza me encantó jjj... profe podrias hacer un curso de Xamarin forms

  • @Jocker88
    @Jocker88 4 ปีที่แล้ว +10

    La documentación es nuestro poder y el que no quiera leerla este no es su oficio jejeje.
    Me están gustando mucho tus vídeos sobre C#. Un saludo!

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

    Cosillas como
    foreach(int item in new int[] { 10, 8, 6, 4, 2, 0 })
    for(LinkedListNode nodo = enteros.First; nodo != null; nodo = nodo.Next)
    no suelen verse mucho en los libros de texto. La verdad es que vienen muy bien para expandir horizontes. Gracias.

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

      No entendi el fragmento de codigo pero se agradece.

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

      Lol ya vi el video lo que pasa es que veo primero los comentarios antes del video lo se basatante raro.

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

    Muchas gracias !!! excelente labor y paciencia con los "sabiondos" o que se creen "hackers" por ver muchas películas.

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

    Wow que facilidades da este lenguaje. Recuerdo que en C me enseñaban a crear las funciones para implementar listas enlazadas, con structs, punteros y todo el asunto.

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

    estoy en proceso de aprendijase y empeze a ver su en youtube y he aprovechado al maximo sus explicaciones que son bastantes claras. de verdad lo felicito.

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

    Hola Juan, sólo quería agradecerte tu manera de enseñar, me gustan mucho tus recomendaciones a la hora de de utilizar las Bibliotecas, de cómo utilizarlas, tus ejemplos para entender los conceptos y tu sinceridad acerca del mundo de la programación. He visto otros temas de C# en otros cursos y reconozco que me costaba entender la utilidad y conceptos de algunos, cosa que no me pasa con tu curso. Así que simplemente GRACIAS.

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

    una aclaración. en el ciclo for (LinkedListNode nodo = numeros.First; nodo != null; nodo=nodo.Next)
    {
    }
    la condició para que el cilco finalice debería ser nodo==null ya que de esa otra manera el ciclo no recorrerá todos los nodos de la lista "numeros". Saludos y gracias por el tuto XD

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

    Minuto 10:21 , excelente, muy bien dicho...

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

    che la verdad que fue muy buena la explicacion. No se ven muy seguido personas que expliquen tan claramente y bien. Felicitaciones

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

    Eres muy grande Juan !!!!!!!!!!!!!!!!!!!!!!!

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

    Muy buena explicación! Me lo explicaron varias veces pero gracias a ti lo he entendido.

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

    El video es excelente!!! el problema es que a veces cuando uno lee la documentación en la página oficial , muchas cosas no se comprende, y terminamos complicándonos más 😔

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

      Ánimo, finalmente la documentación nos da detalles que nos haran ser expertos en programación

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

    Cómo siempre gran video Juan, saludos

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

    Creo que ha sido un vídeo muy instructivo para que viésemos la documentación para ver sus constructores y métodos de los diferentes objetos ya sea nodo o una lista linked. Buen vídeo y Saludos.

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

    Hola sensei fui a la documentación y logré entender lo de los nodos buscando solamente LinkedListNode y apareció lo qué es y cómo usarlo. Gracias por enseñarme a pescar y no solo darme el pescado.

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

    Concuerdo con lo de la documentación, a mi en un principio tampoco me interesaba leerla, pero a medida que uno va aprendiendo mas tecnologías y se construye un software complejo saben aparecer problemas en X parte del código o quieres agregar una característica propia de tu app y no existe códigos de ejemplo que uno puede copiar y pegar en ningún foro o video porque cada software tiene sus particularidades en base a las necesidades que estamos haciendo, en ese momento no toca mas que ir a la documentación de esa tecnología que estamos usando, ya sea un lenguaje, sdk, api, etc y embarrarse las manos leyendo primeramente los First Steps para ver si hemos empezado bien y luego ir poco a poco siguiendo la documentación en orden y ver la grandes posibilidades que nos ofrece esa tecnología, cuando te acostumbras vas a ver que lo primero que haces cuando quieres aprender una nueva tecnología es ir a la documentación y comprender un poco como funciona, como empieza y que te puede ofrecer para tus necesidades que quieres construir o al menos eso es lo que yo he adquirido como costumbre, saludos al profe Juan muy agradecido con todo este conocimiento que imparte con una didáctica de enseñanza magistral, aprendí mi primer lenguaje con su curso de Java hace un par de años y fue lo que sirvió para entrar en este mundo de la programación cuando no sabia ni que era una variable.

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

    Muchas gracias por este gran aprendizaje.

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

    Hola Juan, lo que utilizo para conservar los códigos y todos los cambios es usar Git con GitHub. Me ha resultado muy útil para estudiar tus cursos, antes guardaba muchos archivos para un vídeo.

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

    Excelente explicacion de verdad, lo felicito eres un verdadero profesor

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

    MUCHAS FELICIDADES !!!! , que gran explicación de lo mejor sigan así.

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

    Muy buen comentario sobre lo como se ha de estudiar para ser un buen o un mal programador.

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

    muy buenos ejemplos me hicieron enderlos bastante bien,gracias profe

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

    Muy buena explicación felicitaciones

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

    La lista es como un arraylist ya que usa posiciones contiguas y por eso se tienen que reordenar cuando se hacen inserciones o borrados. En los elementos o nodos de las listas doblemente enlazadas hay referencias o punteros a las posiciones de memorias de sus nodos anteriores y posteriores, por ello pueden no estar contiguas en memoria ni reservar espacio en memoria con anterioridad(en aras del crecimiento) como en las list.

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

    ¿Y qué ventajas tienen entonces las List? imagino que, al estar los datos almacenados en posiciones adyacentes será más rápido el acceso y lectura de esos datos ¿no?

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

      Los linked list utilizan más recursos del sistema que los list, el uso de uno o de otro va a depender de la aplicación que desarrolles, si en tu aplicación no se va realizar muchas eliminaciones de datos pues utilizas list porque es más eficiente que un array y consume menos recursos que un linked list, pero si tu aplicación al contrario va a realizar eliminaciónes de datos constantemente pues utilizas linked list que apesar que utiliza más recursos es más eficiente que un list al momento de eliminar datos.

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

      @@xngesx buena aclaración, gracias amigo, me has ayudado también .

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

    Excelente clase! Gracias.

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

    Las linkedList me recuerda a los nodos de c++ que son struct con un elemento que es una struct del mismo tipo y 1 puntero a una struct o 2, según el diseño. Así que tiendo a pensar que sí, c# usa punteros y puede ser eficiente. Lo que no sé aún si puede manejar direcciones de memoria indicadas de forma explícita, y ya sería lo más.

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

    Lo conseguí!

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

    magnifico, muchas gracias!

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

    Muy bueno el curso de C#. Soy nuevo en este lenguaje y la verdad me está gustando incluso más que C++. Quisiera saber si tenés algo de bibliografía para recomendar. Siempre me gusta complementar tus videos (seguí tu curso de Java) con algo de material extra, como ejercicios para practicar o simplemente algo de lectura adicional. Desde ya, muchas gracias por el trabajo que te tomás al compartir tu conocimiento con nosotros.

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

    jiji es correcto!! si toca decirlo se dice y ya!!!

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

    9:48 FACTS

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

    Gracias otra vez

  • @Bryan-ct3xj
    @Bryan-ct3xj 5 ปีที่แล้ว

    yo igual, espero que esté curso sea como el de java incluso mejor 😁😁

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

    LinkedListNode node = numeros.Last;
    for(; nodo!= null;)
    {
    int numero = nodo.Value;
    Console.WriteLine(numero);
    nodo = nodo.Previous;
    }

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

      También se podría hacer de esta forma
      LinkedListNode miNodo = numeros.Last;
      while (miNodo != null)
      {
      Console.WriteLine(miNodo.Value);
      miNodo = miNodo.Previous;
      }

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

    Waaooo..... que duro....

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

    Hola buenas noches desde Argentina. Me sería de mucha ayuda si explicaras en algun momento sobre Sockets tal como en el curso de JAVA. La verdad no hay mucho contenido para usuarios de bajo nivel (como yo). Y gracias, muchas gracias por tu contenido!

  • @eduardo.olivera
    @eduardo.olivera 5 ปีที่แล้ว

    Hola desde Uruguay! Es un gusto participar de este curso. Muy didáctico. Excelente!!. Soy programador de la "vieja escuela" (c, basic, pascal, assembler, clipper). La verdad que me está resultando muy bueno el curso. De paso dejo planteada una pregunta... Se incluirán manejo de hilos y sql server? Gracias nuevamente.

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

    o sea por lo que entendí del último ejemplo, el iterador ahora será un objeto de tipo nodo del que están compuestas las linked list, este es del mismo tipo que la lista obviamente, y lo igualamos al primer valor que nos devuelve la lista por medio de la propiedad First, luego, ponemos una condición, en este caso que el nodo no sea null (en mi caso probé que pasaba si no ponía esa condición y en su lugar ponía otra cosa pero cambiando un poco todo y me tiraba un error de referencia a un objeto null o algo así era la excepción, obviamente ocurría en tiempo de ejecución), para que nuestro bucle avance, en lugar de aumentar como lo haríamos con un contador entero o decimal tenemos que dar la intrucción de que el nodo avance a la siguiente posición de la lista, en este caso por medio de la propiedad Next, y finalmente, para imprimir o ver lo que tenemos guardado en cada uno de los nodos de la lista creamos una variable o instanciamos un objeto (si lo estuvieramos trabajando con un objeto) que será un objeto o variable temporal por así decirlo que almacenará el valor o valores de nuestros nodos para poder imprimir la información que queramos de estos en consola, por ejemplo, si hiciera esto con un objeto de tipo persona, que contenga un par de campos de clase como sueldo y nombre, este objeto temporal que almacena a cada vuelta el valor en ese momento del nodo me permitiría imprimir de modo sencillo tanto el nombre como el sueldo de esta hipotética persona, es como dices un poco raro y a la primera no la capté jsjs. por cierto, probé también al revés el bucle, o sea, en vez de empezar por el primero puse que empezara por el último valor con la propiedad Last y luego que avance hacia atrás cambiando a cada vuelta el valor del nodo iterador por medio de la propiedad Previous, me sale bastante parecido la verdad, muy interesante forma de armar el bucle jeje. También creé un método genérico que hace algo similar pero para cualquier linkedlist de objetos o variables que se nos acurra armar, me quedó algo así:
    static void ReadElements(LinkedList list) where T : Monster
    {
    for(LinkedListNode nodo = list.Last; nodo != null; nodo = nodo.Previous)
    {
    T monster = nodo.Value;
    Console.WriteLine($"Monster Name: {monster.name}, Monster Damage: {monster.damage}");
    }
    }
    sé que está raro, es porque creé ese método para una serie de clases específicas que heredan de una clase abstracta monstruos, para que este método sólo pueda ser utilizada por las mismas, y al todos los mosntruos compartir tanto un campo nombre como daño pues lo puse sin problemas como cosas para imprimir en consola, excelentes tus vídeos me ayudan a entender un montón de cosas que hasta hace poco me daban dolor de cabeza, saludos desde Perú :D.

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

    Acojonante, tú...

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

    Hola Juan. Gracias por tu enseñar. Cuando estemos viendo bases de datos podríamos usar Entity framework?

  • @pedromartin6244
    @pedromartin6244 15 วันที่ผ่านมา

    Entiendo que usamos LinkedListNode, si previamente hemos instanciado un objeto de la clase LinkedList, es decir, si queremos trabajar en base a los nodos o enlaces de una lista creada con LinkedList, tenemos que utilizar LinkedListNode no?

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

    Los métodos de agregado no ordenan los elementos en forma ascendente ni descendente, solamente desplazan el valor los nodos.

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

    Esta colección no la conocía. Quisiera un pdf de las colecciones o de almenos la más utilizadas.

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

    La linkedList es similar a una blockchain pero con la diferencia de que en una blockchain no se puede agregar o eliminar un nodo en medio de la lista

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

    Buen dia !!!Vas tocar el tema
    delegado handled y eventos ?

  • @Nicolas-wk9mk
    @Nicolas-wk9mk 3 ปีที่แล้ว

    Hola, me gustaría saber si me puedes explicar cuales serían ejemplos de colecciones por cada clasificación (set, list, map) en c#, ya que vi el video de java donde explicas bien la diferencia entre esas tres clasificaciones y ejemplos, pero solo uno o dos están en c#, y necesito tres por cada clasificación, te lo agradecería mucho.

  • @s.g2958
    @s.g2958 5 ปีที่แล้ว

    LinkedList puedo usar también para base de datos?

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

    Hola Juan, Excelente esplicacion como siempre; Disculpa tendras planeado grabar un curso de MVC con C# ?

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

    segunda mitaad vivaaa

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

    Juan gracias por tu enseñanza una pregunta si el for del LinkedListNode hace lo mismo que el foreach anterior cual es la diferencia se que debo entrar a .Net y leer pero estoy en el trabajo y cuando veo que publicas tus video me robo esos minutos me podrías explicar por favor el porque debo usar el primer for que ya mencione mas arriba en este comentario si el foreach hace lo mismo que tengas un feliz resto del día.

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

    Gente, háganle caso sobre la documentación, les servirá mucho para conocer todo lo relacionado con las colecciones y demás elementos de C#.

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

    Hola dejare este comentario por aquí por si lo responden o lo respondo yo cuando entienda XD. Lo que pasa es que en el for de LinkedListNode la declaración del objeto nodo=numeros.First, porque la colección "numeros" no siempre da el primer nodo que seria 10, y da el siguiente nodo, como si también avanzara por la colección, según entiendo "nodo" esta avanzando pero "numeros" se mantiene en el primer nodo de la colección. Y si yo quiero que no avance del primer nodo hasta que lo indique? No entendiendo esa parte la verdad

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

    Porque no usar simepre el LinkedList y no el List si es mas efectivo?

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

    Vaya BEFF profe 🥵🥵

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

    yo, generalmente no leo la documentación, solo la leo cuando no se como usar algo.

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

      uff, eso dolió un poco

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

    Habrá algún video o documentación de como usar la documentación?, ya que esta muy difícil intente replicar los ejemplos de la documentación pero hay cosas complicadas

    • @CesarMendoza-qs2qx
      @CesarMendoza-qs2qx ปีที่แล้ว

      Si.. se llama CHATGPT

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

      @@CesarMendoza-qs2qx Ya lo uso bro, cuando pregunte esto, no estaba chatgpt 3.5, ayuda en mi dia a dia como desarrollador, saludos, te iba a insultar pero no hay que llegar a esos extremos

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

    Es hermoso ver
    Vistas 11,000
    Me gusta: 670
    No me gusta : 0
    edit 3 semanas despues ;
    vistas 13,916

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

    na pregunta: hay alguna forma de realizar los setter y getter de los atributos de manera automatica, como si se puede hacer en netbeans java?

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

      Pincha en la variable y dale a "CTRL+." y alli te sale la opcion de generar el get y set. Ademas en el menú EDITAR y Refactorizar sale encapsular campo.

  • @SaulHernandez-vh2rw
    @SaulHernandez-vh2rw 4 ปีที่แล้ว

    Porque utilizar List enves de LinkedList si al parecer las LinkedList parecen ser superiores?

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

    Una duda, si la LinkedList esta vacía y agregamos un primer nodo. no importa si usamos el método "AddFirst()" o "AddLast()", ambos métodos harían lo mismo en este caso ya que estamos enlazando el primer nodo en la lista. es correcto?

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

    profesor no entendi la parte en la que define dentro del bucle foreach un array de numeros .... eso nunca lo habia hecho antes y no queda claro el porque, cual es la lógica del foreach para ir agreagando cada numero a la linked list....si pudiese explicar bien eso le quedaria muy agradecido...saludos

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

      foreach (int numero in new int[] {10,8,6,4,2,0})
      {
      numeros.AddFirst(numero);
      }
      Por cada numero ("numero es el nombre de la variable o item que guardara la info en la lista ") en este nuevo
      array de tipo entero ("El cual ya esta lleno de forma manual ") añademe a la lista enlazada numeros el item o nombre de variable numero.
      Esa es toda la instruccion, espero hayas quedado claro colega. ¡Un saludo!

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

    15:16 hahahah epic fail
    Pero igualmente aprendí un montón gracias

  • @Juanda-30
    @Juanda-30 ปีที่แล้ว

    no mire la documentacion oficial pero creo que entendi lo ultimo por que en la linkedList la propiedad first obtiene el primer nodo y ya que esta en la memoria heap y se lo asigno a la variable nodo ya la variable nodo queda enlazada y al darle next pasa al siguiente nodo jajaj si no es asi estoy mal por fa corrijan me si alguien ve esto

    • @Juanda-30
      @Juanda-30 ปีที่แล้ว

      claro dice en la documentacion: Cada elemento de la colección LinkedList es un LinkedListNode . LinkedListNode contiene un valor, una referencia a la LinkedList a la que pertenece, una referencia al siguiente nodo y una referencia al nodo anterior. esas referencias se las paso a la variable nodo.

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

    👀

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

    Yo aspiro a ser un programador mediocre de copia y pega XD, aún así le echaré un ojo a la biblioteca esa, pero más adelante, cuando mas o menos se me haya asentado en la cabeza todo lo básico de c#

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

    El profe Juan: "Todos esos programadores que copian de 40000 foros código"
    Todos: aaaaaaaaaaaaaaaaaaa (silvan)

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

    No te quisiera dar el Primer No me gusta porque tenes 0. Pero no explicaste lo de los nodos y mandas a que lo entendamos nosotros. Mal, mal mal