Entiendo que en Swift todas las variables deben establecerse con un valor, y que al usar opcionales podemos establecer una variable que se establecerá nil
inicialmente.
Lo que no entiendo es qué !
está haciendo la configuración de una variable con a , porque tenía la impresión de que esto "desenvuelve" un valor de un opcional. Pensé que al hacerlo, estás garantizando que hay un valor para desenvolver en esa variable, por lo que en IBActions y demás lo ves usado.
En pocas palabras, ¿cuál es la variable que se inicializa cuando haces algo como esto?
var aShape : CAShapeLayer!
¿Y por qué / cuándo haría esto?