Swift Academy · Leçon

Éditeurs et abonnés

Comprendre le contrat éditeur/abonné, sink et assign, les abonnés intégrés.

Leçon 1 sur 412 étapes

Éditeurs et abonnés est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 4 leçons au total.

Bienvenue

Combine est la bibliothèque réactive d’Apple. À sa base se trouvent les éditeurs (qui produisent des valeurs) et les abonnés (qui les consomment).

Protocole d’éditeur

Un `Publisher` émet des valeurs au fil du temps et finit par terminer son exécution ou échouer : ```swift publisher .sink { print("Received: \($0)") } ``` Le type `Output` est le type de la valeur ; `Failure` est le type de l’erreur.

Abonné : sink

```swift let nums = [1,2,3].publisher let cancel = nums.sink { print($0) } // 1, 2, 3 ```

Abonné : assign

```swift class ViewModel { @Published var status = "" } let vm = ViewModel() statusPublisher .assign(to: &vm.$status) ```

AnyCancellable

Chaque abonnement renvoie un objet `AnyCancellable`. Stockez-le pour maintenir l’abonnement actif : ```swift var cancellables = Set() pub.sink { print($0) }.store(in: &cancellables) ```

Éditeur Just

```swift Just(42).sink { print($0) } // emits once then completes ```

Éditeur de notifications

```swift NotificationCenter.default .publisher(for: UIApplication.didBecomeActiveNotification) .sink { _ in print("Active!") } .store(in: &cancellables) ```

Éditeur de minuteur

```swift Timer.publish(every: 1, on: .main, in: .common) .autoconnect() .sink { date in print(date) } .store(in: &cancellables) ```

Événements de fin

```swift pub.sink( receiveCompletion: { completion in switch completion { case .finished: print("Done") case .failure(let e): print("Error: \(e)") } }, receiveValue: { print($0) } ) ```

Contrôle de flux

Combine prend en charge le contrôle de flux — les abonnés peuvent demander un nombre précis de valeurs. La demande `.unlimited` est la valeur par défaut de `sink`.

Vérification rapide

Quel type devez-vous stocker pour maintenir un abonnement Combine actif ?

Récapitulatif

Points essentiels : • Les éditeurs émettent des valeurs au fil du temps ; les abonnés les reçoivent • `sink` reçoit les valeurs et la fin de l’abonnement ; `assign` lie les valeurs à une propriété • Stockez `AnyCancellable` pour maintenir les abonnements actifs • Éditeurs intégrés : `Just`, `Timer.publish`, NotificationCenter Ensuite : les opérateurs.
Gratuit pour commencer

Apprends Swift avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
122
Leçons
409

Questions Fréquemment Posées

La leçon « Éditeurs et abonnés » est-elle gratuite ?

Oui — le texte complet de « Éditeurs et abonnés » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Éditeurs et abonnés » ?

Comprendre le contrat éditeur/abonné, sink et assign, les abonnés intégrés. Tu pratiques Swift Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Swift Academy ?

Aucune expérience préalable n'est requise. Swift Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Éditeurs et abonnés » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Swift Academy ?

Oui. Chaque leçon Swift Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Éditeurs et abonnés
  2. Opérateurs : map, filter, combineLatest
  3. PassthroughSubject et CurrentValueSubject
  4. Réseau avec Combine et URLSession
← Retour à Swift Academy