Ouvrir le menu principal

MacGeneration

Recherche

Initiation à Combine et SwiftUI #3 : le modèle de la vue

Florent Morin

vendredi 01 janvier 2021 à 09:00 • 15

Logiciels

Dans le précédent article de cette série, nous avons conçu un moteur de jeu qui exploite Combine. Cependant, les données renvoyées par notre moteur de jeu ne sont pas exploitables directement par SwiftUI. Il faut donc les transformer.

Heureusement, le framework Combine est particulièrement bien adapté pour faire ce tour de passe-passe qui rendra votre code plus lisible. Vous pouvez toujours télécharger le code source complet en ligne. Le fichier principalement concerné par le présent article est GameViewModel.swift en complément du code principal du playground.

Initiation à Combine et SwiftUI
  1. Les bases
  2. Le moteur de jeu
  3. Le modèle de la vue
  4. La vue en SwiftUI (à venir)

MVVM ?

Dans l’architecture MVVM, qui est plutôt plébiscitée lors de l’utilisation des composants SwiftUI et Combine, il y a trois composants :

  • le modèle : dans notre cas, c’est le moteur de jeu, la donnée brute
  • le modèle de la vue : c’est un modèle qui sort des données directement interprétables par la vue
  • la vue : c’est la partie qui interagit avec l’utilisateur, l'interface graphique

Le modèle de la vue, parfois appelé « vue modèle » du fait de la traduction de « ViewModel », doit donc fournir à la vue des données directement exploitables.

Modèle de vue dans l'ensemble MVVM

L’avantage, …

Soutenez MacGeneration sur Tipeee

Cet article est réservé aux membres du Club iGen


Rejoignez la plus grande communauté Apple francophone et soutenez le travail d'une rédaction indépendante. Le Club iGen, c'est:

  • des articles de qualité rien que pour vous
  • un podcast exclusif
  • pas de publicité
  • un site dédié !

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

Jony Ive et Sam Altman ont des prototypes de leur mystérieux appareil pensé autour de l’IA

18:49

• 6


Réduction rare sur le Magic Keyboard USB-C Touch ID avec pavé numérique

17:46

• 3


Black Friday : jusqu’à - 63 % sur les offres Creative Cloud, même pour les abonnés existants

16:13

• 11


Black Friday éclairage connecté : l’ampoule Hue Essential dès 11 € et autres promos intéressantes

16:03

• 7


Essai de Starlink dans un avion Air France : les performances du Wi-Fi s’envolent

16:03

• 21


iPhone 17 Pro : Apple célèbre ses performances même sous le cagnard dans une pub

13:20

• 8


Imagen, le logiciel d'édition photo par IA, offre 50% de réduction sur TOUT pour le Black Friday 📍

11:06

• 0


Black Friday : 20 % de remise sur de nombreux bracelets Apple, y compris les coloris récents

10:24

• 6


Les prix des MacBook Air M4 s'effondrent : à partir de 869 € !

09:34

• 48


100 € de réduction sur l'ensemble de la gamme MacBook Pro M5

08:51

• 0


Steam est enfin optimisé pour les puces Apple Silicon et gagne une icône adaptée à macOS Tahoe

08:45

• 43


Zone Bar affiche vos fuseaux horaires dans la barre des menus de macOS

08:00

• 8


iOS 27, macOS 27 : une année sous le signe de Snow Leopard

07:56

• 55


Piratage chez Colis Privé : nom, adresse et téléphone de clients dans la nature

06:30

• 44


La fin du Mac Intel, un « 27 » type Snow Leopard et un départ un peu (trop) anticipé : la semaine Apple

23/11/2025 à 19:30

• 67


OpenAI, un géant aux pieds d’argile face au retour en force de Google

23/11/2025 à 13:11

• 66