Tout programme utile a besoin de stocker des données à un moment particulier, et en Swift il y a deux façons de le faire : en déclarant des variables ou des constantes. Une variable est une donnée mise en mémoire dont la valeur peut être modifiée à tout moment, et une constante est une donnée mise en mémoire dont la valeur est définie une seule fois et que vous ne pouvez plus jamais modifier. Ainsi, les variables ont des valeurs qui peuvent varier, et les constantes ont des valeurs qui sont constantes - facile, non ?
Avoir ces deux options peut sembler inutile, après tout, vous pouvez simplement créer une variable et ne jamais en modifier la valeur - pourquoi faut-il en faire une constante ? Eh bien, il s'avère que beaucoup de programmeurs sont - oh choc ! - loins d'être parfaits en programmation, et nous faisons tous des erreurs.
Un des avantages de séparer les constantes des variables est que Xcode nous dira si nous avons fait une erreur. Si nous disons, "fais de cette date une constante, parce que je sais qu'elle ne changera jamais", puis 10 lignes plus tard nous essayons de changer sa valeur, Xcode refusera de compiler notre application.
Les constantes sont également importantes parce qu'elles permettent à Xcode de prendre des décisions sur la façon dont il compile l'application. S'il sait qu'une valeur ne changera jamais, il est capable d'appliquer des optimisations pour rendre notre code plus rapide.
En Swift, on crée une variable en utilisant le mot-clé var
, comme ceci :
var name = "Tim McGraw"
Mettons ça dans un playground pour qu'on puisse voir le résultat de ce qu'on code. Supprimons tout ce qui s'y trouve à l'exception de la ligne import UIKit
(c'est ce qui va appeler le framework d'iOS qui sera nécessaire plus tard), et ajoutons cette variable. Nous devrions voir à l'écran la même chose que l'image présentée ci-dessous.
.
Comme il s'agit d'une variable, vous pouvez changer sa valeur quand vous le voulez, mais vous ne devez pas utiliser le mot-clé var
chaque fois - il est seulement utilisé lorsque vous déclarez de nouvelles variables. Tapons ceci :
var name = "Tim McGraw"
name = "Romeo"
Ainsi, la première ligne crée la variable "name" et lui donne une valeur initiale, puis la deuxième ligne met à jour la variable "name" pour que sa valeur soit maintenant "Romeo". Vous verrez les deux valeurs affichées dans la zone de résultats du playground.
Et si on avait voulu créer une constante plutôt qu'une variable ? Eh bien, les constantes utilisent le mot-clé let
plutôt que var
, nous pouvons donc changer notre première ligne de code pour dire let name
au lieu de var name
, comme ceci :
import UIKit
let name = "Tim McGraw"
name = "Romeo"
Mais maintenant il y a un problème : Xcode montre un symbole d'avertissement rouge à côté de la ligne 3, et souligne name
en rouge. Si vous cliquez sur le symbole d'avertissement, Xcode vous indique le problème : "Cannot assign to 'let' value 'name'", ce qui est sa façon de vous dire que "vous essayez de changer la valeur d'une constante alors que vous ne pouvez pas le faire".
Ainsi, les constantes sont un excellent moyen de promettre à Swift et à vous-même qu'une valeur ne changera pas, car si vous essayez de la changer, Xcode refusera de s'exécuter. Les développeurs en Swift ont une forte préférence pour l'utilisation des constantes chaque fois que c'est possible car cela rend le code plus facile à comprendre. En fait, dans les toutes dernières versions de Swift, Xcode vous prévient si vous créez une variable et ne la modifiez jamais !
Remarque importante : les noms des variables et des constantes doivent être uniques dans votre code. Vous obtiendrez une erreur si vous essayez d'utiliser un même nom de variable deux fois, comme ceci :
var name = "Tim McGraw"
var name = "Romeo"
Si Xcode trouve une erreur dans votre code, il la signale par un avertissement dans une case rouge ou refuse simplement de s'exécuter. Vous saurez si c'est le cas parce que le texte dans le panneau des résultats deviendra gris plutôt que son noir habituel.
SPONSORED Take the pain out of configuring and testing your paywalls. RevenueCat's Paywalls allow you to remotely configure and A/B test your entire paywall UI without any code changes or app updates.
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.