Propiedades Almacenadas en Swift: Uso y Ejemplos Prácticos
Resumen
Aprende a dominar las propiedades en Swift con ejemplos claros y prácticos. Aquí verás qué son las stored properties, cómo declararlas con var y let, y cuándo puedes modificarlas según uses una struct o una clase. Claridad, buenas prácticas y errores comunes para evitar desde el principio.
¿Qué es una stored property en Swift?
Una stored property es la forma más simple de propiedad: una variable o constante almacenada dentro de una instancia de struct o clase. No existe en los enumerados. Por herencia del mundo de Objective C, es habitual llamarlas simplemente properties.
¿Dónde existen y dónde no?
Existen en estructuras y clases.
No existen en enumeraciones.
Se almacenan como parte del objeto instanciado.
¿Por qué se llaman properties y no “propiedades”?
Vienen de Objective C, donde se usaba @property.
Es común mantener el término properties en español técnico.
Cada tipo de property es distinto; aquí se trata de las stored properties.
¿Cómo se declaran y usan con var y let?
Se declaran con var (mutable) o let (inmutable). En struct, la mutabilidad depende tanto de la propiedad como de la instancia.
structFixedLengthRange{var firstValue:Int// stored property mutablelet length:Int// stored property inmutable}// Instancia variable: permite modificar propiedades mutablesvar rangeOfThreeItems =FixedLengthRange(firstValue:0, length:3)rangeOfThreeItems.firstValue =6// válido// Instancia constante: no permite modificar ninguna propiedad, aunque sea varlet rangeOfFourItems =FixedLengthRange(firstValue:0, length:4)// rangeOfFourItems.firstValue = 6 // error: no se puede modificar una propiedad en una instancia let
¿Qué pasa si la instancia es var?
Puedes cambiar las propiedades declaradas con var.
Las propiedades declaradas con let no pueden cambiarse.
Ejemplo: firstValue pasa de 0 a 6; length se mantiene en 3.
¿Qué pasa si la instancia es let?
No puedes modificar ninguna propiedad, ni siquiera las declaradas con var.
Es un error común cuando trabajas con struct inmutables.
Swift suele sugerir: cambia let por var si necesitas mutar.
¿Qué conceptos y habilidades clave debes retener?
Trabajar con stored properties sienta las bases para modelos de datos claros y seguros.
Diferencia esencial: stored properties son datos almacenados; las computed properties (se verán después) calculan valores bajo demanda.
Mutabilidad en struct: si la instancia es let, ninguna propiedad puede cambiarse.
Alcance: las properties están en struct y clases; no en enumeraciones.
Nombrado y contexto: el término properties viene de Objective C (@property) y es habitual en español técnico.
Ejemplo mental útil: recuerda la clase VideoMode con varias stored properties como referencia de uso en clases.
¿Te gustaría ver más ejemplos prácticos de mutabilidad en struct y clases en Swift? Comparte tus dudas o casos de uso en los comentarios.