- Mar 13, 2025
[13/16] Propriétés et méthodes en Swift
Introduction
Lorsque vous créez vos propres types avec des classes ou des structures, vous avez besoin d’y intégrer des informations (comme le nom d’un utilisateur ou le prix d’un produit) et des actions (comme afficher une description ou calculer un total). C’est ici qu’entrent en jeu les propriétés et les méthodes.
Ce chapitre vous aidera à comprendre :
ce qu’est une propriété,
ce qu’est une méthode,
comment les intégrer dans vos classes et structures,
comment les utiliser dans des cas concrets.
Qu’est-ce qu’une propriété ?
Une propriété est une variable ou constante qui appartient à une instance d’une classe ou d’une structure. Elle sert à stocker des données liées à cet objet.
Voici un exemple :
struct Voiture {
var marque: String
var annee: Int
}
let maVoiture = Voiture(marque: "Toyota", annee: 2020)
print(maVoiture.marque) // Affiche : Toyota
Ici, marque et annee sont des propriétés de la structure Voiture. Chaque instance de Voiture possède ses propres valeurs pour ces propriétés.
Qu’est-ce qu’une méthode ?
Une méthode est une fonction intégrée dans une classe ou une structure. Elle permet de faire agir un objet, souvent en utilisant ou en modifiant ses propriétés.
Voici un exemple :
struct Voiture {
var marque: String
var annee: Int
func afficherDescription() {
print("\(marque) - \(annee)")
}
}
let maVoiture = Voiture(marque: "Toyota", annee: 2020)
maVoiture.afficherDescription() // Affiche : Toyota - 2020
La méthode afficherDescription permet à chaque voiture d’afficher une phrase personnalisée.
📌 Une méthode peut lire les propriétés, mais aussi les modifier si elle est définie dans une variable (var) et si la méthode est marquée comme mutating (dans le cas d'une structure).
Propriétés stockées vs calculées
Il existe deux grands types de propriétés :
Propriétés stockées : celles que vous déclarez normalement avec une valeur.
Propriétés calculées : leur valeur est calculée dynamiquement à partir d’autres propriétés.
Voici un exemple :
struct Rectangle {
var largeur: Double
var hauteur: Double
var surface: Double {
return largeur * hauteur
}
}
let monRectangle = Rectangle(largeur: 5, hauteur: 10)
print(monRectangle.surface) // Affiche : 50
Ici, surface est une propriété calculée. Elle ne stocke pas directement une valeur, elle la calcule à la volée.
Méthodes modifiantes (mutating)
Dans une structure, les méthodes qui modifient les propriétés doivent être marquées avec le mot-clé mutating.
struct Compteur {
var valeur = 0
mutating func incrementer() {
valeur += 1
}
}
var compteur = Compteur()
compteur.incrementer()
print(compteur.valeur) // Affiche : 1
Sans mutating, Swift empêche de modifier la valeur à l’intérieur de la méthode.
Exemple concret : une fiche utilisateur
Imaginons une application où vous souhaitez représenter un utilisateur avec un prénom, un nombre de points, et une action pour ajouter des points :
struct Utilisateur {
var prenom: String
var points: Int
mutating func ajouterPoints(_ bonus: Int) {
points += bonus
}
func afficherInfos() {
print("\(prenom) a \(points) points.")
}
}
var utilisateur = Utilisateur(prenom: "Sophie", points: 120)
utilisateur.ajouterPoints(30)
utilisateur.afficherInfos() // Affiche : Sophie a 150 points.
Ce code illustre parfaitement comment les propriétés stockent les données, tandis que les méthodes agissent sur ces données.
Conclusion
Les propriétés et méthodes sont au cœur de la programmation orientée objet en Swift. Elles vous permettent de structurer vos données (avec les propriétés) et de leur donner un comportement (avec les méthodes).
Dans ce chapitre, vous avez appris :
à déclarer des propriétés simples et calculées,
à écrire des méthodes pour agir sur vos données,
à comprendre la différence entre structure et classe vis-à-vis des méthodes,
à utiliser
mutatingpour les structures.
✅ En combinant propriétés et méthodes, vous êtes désormais capables de créer des objets puissants, organisés, et expressifs.