Ouvrir le menu principal

MacGeneration

Recherche

Initiation à Combine et SwiftUI #2 : le moteur de jeu

Florent Morin

mercredi 30 décembre 2020 à 10:00 • 0

Logiciels

La deuxième partie de cette série va vous permettre de découvrir Combine au travers du moteur de jeu que nous allons concevoir ensemble. Pour cela, nous allons nous appuyer sur les règles (basiques) du morpion. À la fin de cet article, vous aurez un moteur de jeu fonctionnel et les bases de la programmation avec Combine.

Une brève introduction a été faite dans le chapitre précédent. Il est fortement recommandé de télécharger le code source complet sur GitLab afin de comprendre en détail les concepts présentés dans l'article. Le fichier principalement concerné par le présent article est GameEngine.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 (à venir)
  4. La vue en SwiftUI (à venir)

Rappel des règles du morpion

Nous sommes sur un plateau de neuf cases numérotées de 0 à 8. Chaque joueur joue à tour de rôle. Un joueur est représenté par un cercle, l’autre par une croix. Un joueur gagne s’il réussit à faire une ligne horizontale, verticale ou diagonale. La partie se termine quand un joueur gagne ou quand toutes les cases sont remplies.

Plateau de morpion

Découvrir le code avec le playground

Si vous utilisez Swift Playgrounds, vous pouvez cloner le code source via Working Copy

Ajouter ce site dans Google News

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é !

iPhone 18 Pro Max : déjà jusqu’à un mois d’attente chez Apple, du stock chez Amazon

09:36

• 57


iOS 27 : faites travailler vos appareils Apple ensemble avec notre livre à 4,99 €

09:30

• 5


ChatGPT m'a aidé à récupérer 9 To de données, que je pensais avoir perdus après une coupure de courant

08:00

• 36


Et si Apple transformait le Mac mini en cerveau de la maison connectée ?

12/09/2026 à 19:56

• 10


Le nouveau score de récupération de l’Apple Watch repose sur une donnée dont Apple n'a pas testé la précision

12/09/2026 à 17:55

• 27


iPhone 18 Pro et Pro Max : des premières remises allant jusqu’à 200 €

12/09/2026 à 15:19

• 13


iPhone 18 Pro et Pro Max : les précommandes sont ouvertes, les délais s’allongent déjà 🆕

12/09/2026 à 14:01

• 121


iOS 27 : la correction automatique des mots de passe et les suggestions dans Messages attendront

12/09/2026 à 12:59

• 14


iOS 27 arrive le 14 septembre : les réglages de confidentialité à revoir (et ExpressVPN à -80 %) 📍

12/09/2026 à 12:59

• 0


MacBook Neo : jusqu’à 120 € sur la carte Carrefour, ou 100 € de remise chez Amazon

12/09/2026 à 12:58

• 2


Victime de son succès, GPT-6 Astra pousse OpenAI à fermer son offre ChatGPT Pro à 200 $

12/09/2026 à 11:47

• 24


Entre clins d’œil à Steve Jobs et piques sur la concurrence, le style John Ternus

12/09/2026 à 11:00

• 28


Précommandes des iPhone 18 à 14 heures : un Pro aujourd’hui ou un Duo en octobre ?

12/09/2026 à 08:44

• 73


iPhone 18 Pro : l’Apple Store baisse le rideau jusqu’à 14 heures

12/09/2026 à 08:44

• 25


La brosse à dents connectée de Dyson retirée temporairement des étals suite à un défaut de composants

12/09/2026 à 08:43

• 60


Sortie de veille : notre premier avis sur l’iPhone Duo et les autres nouveautés du keynote

12/09/2026 à 08:00

• 5