Bloque 2. Conceptos de Programación - Tutorial 4 Paso de referencias

00:07:30
https://www.youtube.com/watch?v=rwGudEnxPEE

Zusammenfassung

TLDRO vídeo explica o concepto de referencias en programación, utilizando o exemplo dun elevador que ten un peso máximo e capacidade. As referencias son direccións de memoria que apuntan a un obxecto na memoria. O vídeo mostra como dúas referencias poden apuntar ao mesmo obxecto e como calquera modificación a través dunha referencia afecta a todas as referencias que apuntan a ese obxecto. É importante entender este concepto para evitar problemas no código, especialmente cando se traballa con datos compartidos.

Mitbringsel

  • 📝 As referencias son direccións de memoria que apuntan a obxectos.
  • 🔄 Modificar un obxecto a través dunha referencia afecta a todas as referencias.
  • 📊 O exemplo do elevador ilustra como funcionan as referencias.
  • 💡 É importante entender as referencias para evitar problemas no código.
  • 🔍 As referencias permiten compartir datos entre diferentes partes do código.

Zeitleiste

  • 00:00:00 - 00:07:30

    Neste vídeo, aprendemos sobre referencias que surxen do acceso a datos, utilizando o exemplo dun elevador. O elevador chico ten un peso máximo de 400 e unha capacidade de cinco persoas. As referencias apuntan a obxectos na memoria, e ao imprimir o elevador, vemos que se mostra como unha referencia en lugar do obxecto en si. A continuación, creamos outra referencia chamada 'outro elevador' que apunta ao mesmo obxecto que 'elevador chico'. Ao modificar a capacidade máxima de 'elevador chico', tamén se modifica 'outro elevador', demostrando que ambas referencias apuntan á mesma dirección de memoria. Este concepto é crucial para evitar problemas ao modificar datos que son compartidos entre diferentes referencias.

Mind Map

Video-Fragen und Antworten

  • ¿Qué son las referencias en programación?

    Las referencias son direcciones de memoria que apuntan a un objeto en la memoria.

  • ¿Qué sucede al modificar un objeto referenciado?

    Si se modifica un objeto a través de una referencia, el cambio se refleja en todas las referencias que apuntan a ese objeto.

  • ¿Cómo se crean referencias en código?

    Se puede crear una referencia asignando una variable a otra que ya apunta a un objeto existente.

  • ¿Qué es la memoria RAM en este contexto?

    La memoria RAM es donde se almacena la información y los objetos en programación.

  • ¿Por qué es importante entender las referencias?

    Entender las referencias es crucial para evitar errores al modificar datos que son compartidos entre diferentes partes del código.

Weitere Video-Zusammenfassungen anzeigen

Erhalten Sie sofortigen Zugang zu kostenlosen YouTube-Videozusammenfassungen, die von AI unterstützt werden!
Untertitel
es
Automatisches Blättern:
  • 00:00:01
    Hola en esta ocasión aprenderemos sobre
  • 00:00:04
    las referencias las cuales surgen del
  • 00:00:07
    acceso a los datos Pues bien si
  • 00:00:10
    recordamos en los videos anteriores
  • 00:00:12
    creamos un elevador
  • 00:00:14
    chico que alude a un lado del cúmulo
  • 00:00:17
    parte de la memoria RAM donde se halla
  • 00:00:19
    toda la información ahí encontramos que
  • 00:00:22
    su peso máximo es de 400 y su capacidad
  • 00:00:25
    máxima es de cinco
  • 00:00:27
    personas como habíamos visto en el
  • 00:00:30
    contenido el elevador chico la
  • 00:00:32
    definición el alias o referencia están
  • 00:00:35
    en la
  • 00:00:37
    pila parte pequeña donde solo se asignan
  • 00:00:40
    direcciones de memoria que apuntan hacia
  • 00:00:43
    el verdadero objeto que se encuentra en
  • 00:00:45
    el cúmulo hay mucho espacio para crear
  • 00:00:47
    objetos Por consiguiente tiene que haber
  • 00:00:50
    este tipo de referencia yo apunto hacia
  • 00:00:53
    donde está él ahora veámoslo en código
  • 00:00:57
    hasta ahora hemos impreso sus valores
  • 00:00:59
    Pero qué pasa si imprimimos
  • 00:01:02
    elevador para esto primero comentemos
  • 00:01:05
    toda esta
  • 00:01:10
    parte solo dejemos la definición de
  • 00:01:13
    elevador
  • 00:01:15
    chico como vemos solo nos quedó sin
  • 00:01:18
    comentarios esta parte que es la
  • 00:01:20
    instrucción que crea un
  • 00:01:23
    elevador por lo que si la ejecutamos no
  • 00:01:26
    ocurre nada porque simplemente creé más
  • 00:01:29
    no imprimí sus elementos ni se hizo nada
  • 00:01:32
    con el elevador Ahora sí imprimamos el
  • 00:01:37
    elevador System punto out punto
  • 00:01:42
    printline
  • 00:01:46
    paréntesis y aquí copiamos y pegamos
  • 00:01:49
    elevador
  • 00:01:53
    chico
  • 00:01:55
    imprimimos y nos muestra en la primera
  • 00:01:57
    parte que es de tipo elevador la roba
  • 00:02:00
    indica que es una parte de la memoria y
  • 00:02:03
    la memoria nos lo da en
  • 00:02:05
    hexadecimal por lo que no se sabe por la
  • 00:02:08
    estructura de la computadora Dónde está
  • 00:02:10
    almacenado el
  • 00:02:12
    objeto pero sí sabemos que esto no es el
  • 00:02:15
    objeto de lo contrario nos tendría que
  • 00:02:17
    imprimir su información sino solo es una
  • 00:02:21
    referencia al
  • 00:02:23
    objeto ahora veamos un ejemplo de estas
  • 00:02:26
    referencias con otra imagen como vemos
  • 00:02:29
    podemos crear dos referencias que
  • 00:02:31
    apunten hacia el mismo objeto aquí
  • 00:02:33
    tenemos una referencia que se llama
  • 00:02:35
    elevador chico y otra que se llama otro
  • 00:02:42
    elevador pero ambas se dirigen a este
  • 00:02:45
    objeto por lo que si cambio algún dato
  • 00:02:48
    en otro elevador también se va a cambiar
  • 00:02:50
    de este lado por lo tanto cuando el
  • 00:02:52
    sistema quiere acceder a algo del objeto
  • 00:02:55
    este ya estará cambiado veamos expresado
  • 00:02:58
    esto en código creemos otro elevador que
  • 00:03:01
    será de tipo elevador y cuyo nombre será
  • 00:03:04
    otro elevador aquí no vamos a utilizar
  • 00:03:07
    el operador New porque no queremos crear
  • 00:03:09
    otro objeto no queremos reservar otro
  • 00:03:12
    espacio en la memoria sino queremos
  • 00:03:14
    irnos al que ya está
  • 00:03:23
    reservado por lo que aquí otro elevador
  • 00:03:26
    va a ser igual a elevador chico y
  • 00:03:28
    terminamos con punto
  • 00:03:32
    coma Entonces tenemos aquí ya elevador
  • 00:03:36
    chico e imprimimos otro
  • 00:03:38
    elevador ahora ejecutemos si vemos estos
  • 00:03:42
    dos son lo mismo quiere decir que están
  • 00:03:45
    apuntando a la misma dirección de
  • 00:03:46
    memoria y como vemos en la imagen así
  • 00:03:51
    es ahora veamos cómo se comporta
  • 00:03:56
    esto si escribimos System punto out
  • 00:04:00
    punto
  • 00:04:09
    printline peso elevador
  • 00:04:14
    chico y en la parte de abajo imprimimos
  • 00:04:17
    lo de otro
  • 00:04:27
    elevador en ambos vamos a imprimir la
  • 00:04:30
    capacidad máxima de
  • 00:04:36
    personas y pongamos el signo de más para
  • 00:04:40
    concatenar finalmente
  • 00:04:43
    imprimimos si nos damos cuenta el peso
  • 00:04:45
    es de cinco en los dos casos eliminamos
  • 00:04:48
    esto para que no nos muestre la
  • 00:04:49
    dirección ya que no nos interesa Por el
  • 00:04:51
    momento ejecutamos y aparece nuevamente
  • 00:04:54
    el cco ahora bien Si queremos cambiar
  • 00:04:57
    ese cco realizamos lo siguiente
  • 00:05:00
    elevador chico punto capacidad máxima de
  • 00:05:03
    personas igual a y es aquí donde vamos a
  • 00:05:07
    modificarlo lo podemos hacer tal como
  • 00:05:09
    modificamos cualquier
  • 00:05:15
    variable si nos damos cuenta aquí ya
  • 00:05:18
    estamos accediendo directamente a este
  • 00:05:20
    elemento por lo que podemos poner aquí
  • 00:05:22
    igual a 7 sin embargo nosotros no lo
  • 00:05:26
    haremos directamente en la clase por lo
  • 00:05:28
    que la modificación la harem en el
  • 00:05:29
    objeto y ahora sí escribimos igual a
  • 00:05:35
    7 con esto hemos accedido para
  • 00:05:38
    modificarlo por lo que la capacidad
  • 00:05:40
    máxima de personas ya no es cinco sino
  • 00:05:43
    es
  • 00:05:46
    siete imprimamos nuevamente esta
  • 00:05:48
    capacidad máxima del elevador chico
  • 00:05:51
    ejecutemos si vemos antes era cco del
  • 00:05:55
    otro elevador es c y ahora es si Pero
  • 00:05:59
    qué qu pasa con otro elevador Al momento
  • 00:06:01
    de modificar elevador
  • 00:06:02
    chico imprimamos también el otro
  • 00:06:05
    elevador y ejecutemos
  • 00:06:08
    observemos que antes de que se
  • 00:06:10
    modificara el dato valía cinco
  • 00:06:13
    modificamos solo el dato de elevador
  • 00:06:15
    chico por lo que para elevador chico y
  • 00:06:18
    para otro elevador el valor ya es
  • 00:06:27
    siete Por qué ocurrió esto porque como
  • 00:06:30
    explicamos previamente al Modificar el
  • 00:06:32
    cinco por el siete cuando quisimos
  • 00:06:34
    acceder por medio de otro elevador este
  • 00:06:37
    valor ya no era cinco sino
  • 00:06:47
    siete Así es como actúa la referencia
  • 00:06:50
    pues aunque tenemos dos elementos
  • 00:06:52
    diferentes en el alias otro elevador y
  • 00:06:55
    elevador chico ambos están apuntando al
  • 00:06:57
    mismo objeto que es el elevador en la
  • 00:07:00
    memoria por lo que si modificamos aquí
  • 00:07:03
    se va a modificar en cualquier objeto
  • 00:07:05
    que apunte al
  • 00:07:09
    mismo Hemos llegado al final de este
  • 00:07:11
    video en el que se explicó Cómo se
  • 00:07:13
    trabajan las referencias esto debemos
  • 00:07:16
    tenerlo muy claro dado que si
  • 00:07:18
    modificamos una parte de los datos Y no
  • 00:07:20
    contemplamos que tenemos otro objeto que
  • 00:07:22
    apunte a lo mismo puede causarnos
  • 00:07:25
    problemas continuamos con el
  • 00:07:28
    curso y
Tags
  • referencias
  • programación
  • memoria
  • elevador
  • código
  • modificación
  • objetos
  • pila
  • cúmulo
  • errores