¿Qué es una propiedad perezosa?
- Una propiedad almacenada perezosa es una propiedad cuyo valor inicial no se calcula hasta la primera vez que se utiliza
- Puedes indicar una propiedad almacenada perezosa escribiendo el modificador perezoso antes de su declaración.
- Útil cuando la propiedad del valor inicial depende de factores externos
¿Por que usar propiedades perezosas?
- Una variable necesita conocer otra variable, cuyo valor no se conoce hasta después de la inicialización de una instancia.
- Tareas computacionalmente costosas, que pueden obstaculizar el rendimiento.
Una variable necesita saber sobre otra
- Ayuda a retrasar el trabajo hasta que lo necesite.
- Las variables se crean mediante un cierre, tú especificas cuándo se solicita esa variable por primera vez.
- si nunca se reutiliza, la función nunca se ejecuta, por lo que ayuda a ahorrar tiempo de procesamiento.
Tareas computacionalmente costosas
- Si hay una tarea de desempeño costosa.
- Si la función se ejecuta una vez, el valor se almacena.
- Si se usa una propiedad calculada, la función tendría que ejecutarse nuevamente, lo que dificultaría el rendimiento.
Notas importantes
- Las propiedades perezosas siempre deben ser variables, están marcadas con una lazy var
- .El tipo de datos se puede configurar para evitar inferir el tipo.
- Si usas una clase, declara [unowned self] para evitar ciclos de referencia fuertes.