Ouvrir le menu principal

MacGeneration

Recherche

Catalyst aujourd’hui, SwiftUI demain, Apple prépare le futur des interfaces

Anthony Nelzin-Santos

mardi 04 juin 2019 à 21:00 • 21

macOS

Marzipan devait être la star de la WWDC. Après avoir dévoilé son nom définitif, « projet Catalyst », Craig Fedherighi lui a finalement consacré seulement quelques minutes. Il s’est fait voler la vedette par SwiftUI, un nouveau framework permettant de créer des interfaces pour tous les appareils Apple, avec une syntaxe déclarative en Swift. En promettant « moins de code pour de meilleures apps », il semble préfigurer le futur du développement applicatif pour la plateforme Apple.

La déclaration d’un élément d’interface avec Swift UI.

SwiftUI, donc, est un nouveau framework permettant de construire des interfaces, codé « en Swift et pour Swift ». Tout l’intérêt de SwiftUI repose dans son approche déclarative : on déclare la structure et l’arrangement de l’interface, on prévoit les éléments textuels et graphiques, et le système se charge du reste. Espacements, localisation, prise en charge du mode sombre et de Dynamic Type, animations… sauf à ce que les développeurs veuillent les modifier, SwiftUI fournit automatiquement tous les comportements par défaut.

SwiftUI évoque la manière dont on peut concevoir les interfaces sur Android, ou avec des frameworks comme React Native. Le code est plus simple et plus clair, le résultat est plus flexible et résilient, et — surtout — s’exécute sur tous les appareils. Des fondations à l’interface, les développeurs peuvent partager de plus en plus de code entre les différentes « versions » d’une application. L’objectif est clair : qu’une même application tourne de watchOS à macOS en passant par iOS, avec le même code, à l’exception de quelques ajustements spécifiques à chaque taille d’écran.

Mais alors, quid de Catalyst ? Il apparait comme une technologie de transition — rendez-vous compte qu’il repose sur une bidouille qui consiste à implanter un dossier système iOS, iOSSupport, au sein de macOS. SwiftUI semble être une solution bien plus robuste, parfaitement intégrée dans Xcode, quoiqu’encore très jeune. Pour le moment, SwiftUI cohabite avec AppKit sur macOS, UIKit sur iOS et macOS, et WatchKit pour watchOS. Pour le moment…

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

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

Soutenez MacGeneration sur Tipeee

Tests, série, analyses… Les articles du Club iGen publiés en octobre

01/11/2025 à 15:00

• 3


Sortie de veille : comment Apple bat de nouveaux records financiers

01/11/2025 à 08:00

• 14


Sam Altman, frustré, annule sa commande de Tesla Roadster et se prend un mur

31/10/2025 à 21:00

• 129


Votre iPhone 18 Pro, vous le prendrez plutôt café, violet ou bordeaux ?

31/10/2025 à 17:13

• 57


Cette extension pour Chrome reprend une idée populaire d’Arc pour changer d’onglet

31/10/2025 à 15:20

• 7


Le gouvernement américain voudrait bannir TP-Link pour des raisons de sécurité nationale

31/10/2025 à 11:30

• 26


Le Black Friday a déjà commencé chez Boulanger, qui autorise les retours jusqu’au 31 janvier

31/10/2025 à 10:31

• 5


Attention aux tentatives d'arnaques en lien avec les données volées à Bouygues Telecom

31/10/2025 à 10:19

• 38


iOS 26.1, nouveau matériel : que nous réserve le mois de novembre d’Apple ?

31/10/2025 à 10:01

• 33


Bon plan : le MacBook Air M4 avec 24 Go de RAM et SSD 512 Go à 1 347 €

31/10/2025 à 08:44

• 12


iPhone 17 : un succès au-delà des attentes

31/10/2025 à 08:10

• 53


WhatsApp va bientôt débarquer sur l'Apple Watch

31/10/2025 à 07:35

• 45


Apple, le grand retour : 2025 finit bien mieux qu’elle n’avait commencé

30/10/2025 à 22:57

• 30


Meta perd plus de 200 milliards de valorisation boursière, suite aux doutes sur ses investissements dans l’IA

30/10/2025 à 21:45

• 105


Prosser vs Apple : l’intermédiaire nie avoir prémédité la fuite de l’interface d’iOS 26

30/10/2025 à 21:30

• 6


Le support auto pour iPhone qui aimante vos trajets

30/10/2025 à 21:22

• 0