No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Diferencia entre struct y class

7/22
Recursos

Aportes 8

Preguntas 0

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Estructuras: Las instancias son diferentes y los valores son independientes.

Clases: Se pueden crear N instancias, pero siempre van a depender de la clase y por ende, si se modifica un valor de una instancia, esto cambiara el valor de la clase original

Tal y como lo describe el profesor, esta particularidad de las clases en Swift nos va a permitir trabajar entre contextos con instancias de una clase fácilmente sin perder los valores definidos a esta. Por ejemplo, movernos entre distintas vistas sin perder el contexto de la acción que se está llevando a cabo. Esta cualidad me encanta.

Este cuate lo hace mejor, es menos choro y mas concreto, felicidades!

En el caso de los valores por referencia encontraremos que cuándo se cambian las propiedades o atributos de una instancia, dichos cambios afectarán los valores de la instancia original:

El ejemplo que nos brinda el profesor hace uso de estructuras que se administran por valor. Tienes dos instancias de la misma estructura, ambas son independientes y pueden tener distintos valores en el tiempo y cambios a una instancia no afectan a la otra.

En programación el concepto de valor o referencia es generalmente usado al hablar de parámetros para funciones/métodos. Primero entendamos los contextos, el contexto principal es dónde llamamos a la función/método es decir donde hacemos resultado = suma(1, 1). Luego tenemos el contexto secundario que es lo que sucede dentro de la función/método llamado suma, es decir donde tenemos la palabra reservada return.
En el caso de los parámetros por valor, si se envían los valores 2 y 3, aunque estos valores cambien en el contexto secundario, seguirán siendo 2 y 3 en el contexto principal. En el caso de los parámetros por referencia dichos parámetros serán afectados por cualquier modificación que se haga en el contexto secundario. Esto se debe al manejo de la memoria, en el caso de los parámetros por valor se crean copias de los valores de entrada asignados a nuevas posiciones en la memoria RAM, en el caso de los valores por referencia se hace referencia a la posición original que tienen los parámetros enviados. Por esa razón hay una diferencia entre el uso de parámetros por valor y por referencia, por la forma en la que cada uno usa la memoria.

Esta clase me dio un pequeño dolor de cabeza jeje.