[Swift / Pour les débutants] Écrivez intelligemment avec l'inférence de type

Modèle intelligent avec inférence de type

let str:String = "Hello"
let str = "Hello"   
//Sur le côté droit"Hello"Est un type String, donc str est implicitement un type String
let color:UIColor = UIColor.red
let color:UIColor = .red  
//Comme UIColor est explicitement déclaré sur le côté gauche, UIColor sur le côté droit peut être omis.
UIView.animate(withDuration: 1, delay 1, 
options: UIView.AnimationOptions.curveEaseIn, 
animations: { }, completion: nil)

UIView.animate(withDuration: 1, delay 1,
options: .curveEaseIn,
animations: { }, completion: nil)
//Puisque le type d'argument est AnimationOptions d'UIView, il peut être omis.

Modèles qui augmentent les coûts de traitement lorsqu'ils sont écrits par inférence de type

(référence) https://t.co/j5Yq9fIrQO?amp=1

let add = (num1 ?? 0 as Int) + (num2 ?? 0 as Int) + (num3 ?? 0 as Int)
//Il est plus rapide de spécifier le type
let add1 = num1 ?? 0 as Int
let add2 = num2 ?? 0 as Int
let add3 = num3 ?? 0 as Int
let sum = add1 + add2 + add3
//Il est plus facile de le déballer d'abord, ou de le décomposer pour des expressions compliquées avant de le calculer.

Recommended Posts

[Swift / Pour les débutants] Écrivez intelligemment avec l'inférence de type
Construction d'environnement avec Docker pour les débutants
[Astuces] Comment résoudre les problèmes avec XCode et Swift pour les débutants
(Pour les débutants) Collection d'éléments de vue Swift UI
Apprenez de «Et alors», les bases de Java [pour les débutants]
Écrire des tests pour les applications JavaFX avec TestFX
[Atelier pour débutants] Écrivons un test E2E avec Cloud9 + Docker Compose + Cypress!
Écrivez facilement plusieurs boucles avec des fermetures rapides
[Pour les débutants] Testez l'enregistrement des utilisateurs avec RSpec
Rechercher dans JPQL des tables avec des colonnes de type JSON
[À voir absolument pour les débutants] Compilez les paramètres avec IntellJ [Beaucoup d'images]
[Pour les débutants] Pouvons nous enduire comme Swift!