Dificultad: principiante | Fácil | Normal | Desafiante
Es una de esas cosas. Swift le da una advertencia y puede cambiar un fragmento de código para suprimir la advertencia.
Lo cambias y la vida sigue.
Entonces descubres que un atributo puede ayudarte.
Eso es un bingo.
atributo: una forma de proporcionar información sobre una declaración de tipo
En mi publicación de Medium sobre la protección de datos en el llavero , tuve una función bastante agradable que devuelve el estado de OS después de que se completa la operación de guardado.
Aquí está la firma de la función:
func save(key: String, data: Data) -> OSStatus
¿La advertencia completa? La inicialización del "estado" del valor inmutable nunca se utilizó; considere reemplazarlo con una asignación a '_' o eliminarlo
Entonces, como solución para eliminar esto, uso el guión bajo en Swift.
_ = kc.save(key: "MyString", data: data)
En realidad no, y elimina cualquier advertencia. Agradable. Pero hay otra forma de evitar esto. Una mejor manera,
En la función (y notablemente no en ningún protocolo asociado) attributese agrega. Para hacer esto un poco más claro, usaré una esencia para la función modificada
Que luego podemos llamar, pero crucialmente podemos (bueno) descartar el resultado .
esto significa que podemos llamar con
Sin errores: solo una vida fácil.
Ah, ¿y el cambio a mi código real? Vea el siguiente gif animado:
¿Qué tan fácil fue eso?
Yo diría que es demasiado fácil.
Ahora, ¿por qué no estaba haciendo eso antes?
Si está creando una API pública donde no es probable que se use el resultado (al menos la mayor parte del tiempo), attribute@discardableResult ofrece una excelente manera de evitar que su cliente use _ para silenciar esa advertencia molesta.
No cuesta nada y hace que su código sea más fácil de leer.
Por supuesto, si espera que el cliente use el resultado, de todas formas no golpee @discardableResult.
Siempre codificamos con la gorra de pensar puesta, dijo alguien que cita mal a Edward De Bono. Entonces eso no será un problema, y @discardableResult es genial attributepara tener en nuestro arsenal de codificación.
¿Alguna pregunta? Puedes ponerte en contacto conmigo AQUÍ
Un cambio de juego para los viajes compartidos De todas las cosas que hacemos en Lyft, coreografiar las recolecciones entre pasajeros y conductores es una de las más complejas y trascendentales. Lograr esta coreografía depende de que Lyft haga muchas cosas bien, pero simplemente mantener a los pasajeros al día es esencial.
Esta semana, recibí un correo electrónico de un miembro de la lista de correo electrónico diaria. Querían saber: ¿Qué recursos visita diariamente, semanalmente y mensualmente? ¡Gran pregunta! Estoy feliz de intentar compartir algunas ideas sobre mi flujo de trabajo y los principales recursos que uso.
Lo que es viejo ahora es nuevo otra vez y lo que solía ser algo reluciente ahora se siente aburrido. No me refiero a que los jeans JNCO regresen entre los chicos geniales del centro de la ciudad junto con otras modas de fines de la década de 1990.
Ayer cerramos la puerta del Festival de la Canción de Eurovisión de este año con una gran final brillante y caótica en la que la cantante sueca Loreen se llevó a casa el trofeo, convirtiéndose en la primera mujer en ganar dos veces y devolviendo la corona a Suecia 50 años después de que ABBA ganara la competencia. con “Waterloo”. Se convirtieron en uno de los actos más grandes en el canon de la música pop.
“Él me protegerá cuando esté en peligro. Me esconderá en su tienda.
Introducción: Bienvenidos, valientes lectores, a un viaje que nos llevará a las profundidades más oscuras de nuestro planeta. En este blog, profundizamos en el enigmático mundo de la Fosa de las Marianas, descubriendo sus secretos ocultos y descubriendo las verdades escalofriantes que se encuentran debajo de su superficie.