View in English

  • Global Nav Open Menu Global Nav Close Menu
  • Apple Developer
Search
Cancel
  • Apple Developer
  • News
  • Discover
  • Design
  • Develop
  • Distribute
  • Support
  • Account
Only search within “”

Quick Links

5 Quick Links

Vidéos

Ouvrir le menu Fermer le menu
  • Collections
  • Sujets
  • Toutes les vidéos
  • À propos

Retour à WWDC24

  • À propos
  • Transcription
  • Platforms State of the Union (ASL)

    Discover the newest advancements on Apple platforms.

    Chapitres

    • 0:00:21 - Introduction
    • 0:01:35 - Apple Intelligence
    • 0:09:14 - Generative Tools
    • 0:21:10 - Xcode
    • 0:23:58 - Swift Assist
    • 0:27:44 - Swift
    • 0:33:01 - Swift Testing
    • 0:35:23 - SwiftUI
    • 0:41:58 - RealityKit
    • 0:44:17 - iOS
    • 0:47:24 - iPadOS
    • 0:49:30 - watchOS
    • 0:52:11 - macOS
    • 0:56:26 - visionOS
    • 1:02:15 - Native Experiences
    • 1:04:23 - Conclusion

    Ressources

      • Vidéo HD
      • Vidéo SD
  • Rechercher dans cette vidéo…

    ♪ ♪

    Bienvenue à Platforms State of the Union de WWDC24 ! WWDC est toujours un moment excitant pour approfondir sur l’aspect technique de ce sur quoi nous avons travaillé, partager comment cela fonctionne et vous permettre de comprendre les possibilités de vos apps et de vos jeux. Avant de commencer, nous souhaitons prendre le temps de reconnaître votre travail et votre détermination, vous qui créez, concevez et développez les apps et les jeux extraordinaires que les gens utilisent tous les jours pour apprendre, jouer, travailler et changer le monde. Merci ! Nous adorons communiquer avec vous dans le monde entier dans les Apple Developer Centers, les Developer Academies et les labos Apple Vision Pro où vous avez créé les premières apps et premiers jeux d’informatique spatiale ! Et la nouvelle génération de développeurs et développeuses nous a impressionnés lors du Swift Student Challenge avec des playgrounds astucieux et créatifs couvrant des thèmes allant de l’impact social à la sécurité. Nous sommes constamment éblouis par votre créativité, votre enthousiasme et vos nouvelles idées. Merci de rendre cet écosystème aussi incroyable and excitant. Voyons maintenant en détail les annonces majeures de notre équipe de développement, en commençant par Seb qui va vous en dire plus sur Apple Intelligence.

    Cette année va être exceptionnelle pour le développement. Il y a tellement d’innovations en ce moment avec l’IA générative, et aujourd’hui marque le début d’un chapitre passionnant avec Apple Intelligence. Apple Intelligence, c’est le système d’intelligence personnel qui fournit des modèles génératifs puissants pour nos plateformes. iOS, iPadOS et macOS acquièrent de puissantes nouvelles capacités pour comprendre et générer du langage et des images, et aider les utilisateurs et utilisatrices à agir, tout en ayant hautement conscience de leur contexte personnel. Cela est intégré au cœur des fonctionnalités et des apps sur l’ensemble du système, et conçu avec confidentialité depuis le départ. Avant de voir toutes les nouvelles façons dont vous pouvez intégrer les nouvelles fonctionnalités et les inclure dans vos apps, jetons un œil en coulisses sur le développement d’Apple Intelligence. Nos plateformes sont depuis des années au premier plan en matière d’exécution des tâches d’apprentissage automatique sur appareil, utilisant au maximum la puissance d’Apple Silicon. Nous cherchons à exécuter le plus possible sur appareil, car cela offre une faible latence et une meilleure expérience utilisateur, et permet aussi de garder les données personnelles et les activités confidentielles. Les nouveaux modèles d’IA générative sont incroyablement excitants et puissants, et ils repoussent vraiment les limites de ce qui peut être exécuté localement. Apple Intelligence commence avec notre modèle de fondation sur appareil, un large modèle de langage hautement performant. Nous cherchions le juste équilibre : assez puissant pour les expériences que nous voulions, mais suffisamment petit pour pouvoir fonctionner sur un appareil. À partir de ce modèle de fondation, nous avions trois défis principaux à relever : le spécialiser pour qu’il soit adapté aux nombreuses tâches et fonctionnalités que nous voulions exécuter, qu’il soit suffisamment petit pour tenir dans un appareil comme un iPhone, et qu’il fournisse la meilleure performance possible en matière d’inférence et d’efficacité énergétique. La première technique que nous avons utilisée est le réglage fin. Elle consiste à effectuer différents cycles d’apprentissage sur notre modèle, chacun lui apprenant à effectuer parfaitement une tâche donnée, telle que résumer ou relire un texte, ou générer des réponses aux e-mails. Ce processus mène à un ensemble de modèles distincts, chacun formé pour effectuer parfaitement une tâche, mais pas aussi efficace pour d’autres. Une approche de réglage fin plus efficace utilise la nouvelle technique des adaptateurs. Les adaptateurs sont de petits groupes de poids de modèle superposés sur le modèle de fondation de base commune. Ils peuvent être chargés et échangés de manière dynamique, donnant au modèle de fondation la capacité de s’auto-spécialiser instantanément pour la tâche en question. Apple Intelligence comprend un vaste ensemble d’adaptateurs, chacun réglé précisément pour une fonctionnalité spécifique. C’est une manière efficace d’élargir les capacités de notre modèle de fondation. La prochaine étape a consisté à compresser le modèle. Nous avons utilisé des techniques de quantification de pointe pour réduire un modèle de 16 bits par paramètre à une moyenne de moins de 4 bits par paramètre pour qu’il tienne dans les appareils compatibles avec Apple Intelligence, tout en maintenant la qualité du modèle. Enfin, nous nous sommes penchés sur l’efficacité et la performance de l’inférence, en optimisant les modèles afin d’obtenir le délai le plus court pour traiter une commande et produire une réponse. Nous avons adapté plusieurs technologies, comme le décodage spéculatif, l’élagage du contexte, et l’attention aux requêtes de groupe, et les avons toutes réglées pour tirer le meilleur parti du Neural Engine. Nous avons également utilisé un processus similaire pour un modèle de diffusion qui génère des images en utilisant des adaptateurs pour différents styles et Genmoji. Apple Intelligence sur appareil, c’est ça : des modèles de langage et de diffusion puissants, intuitifs et intégrés qui fournissent une excellente performance et fonctionnent sur des appareils suffisamment petits pour tenir dans votre main. Il existe cependant des fonctionnalités plus avancées qui nécessitent des modèles plus larges pour raisonner avec des données plus complexes. Nous avons donc étendu Apple Intelligence au cloud avec Private Cloud Compute pour exécuter ces modèles de fondation plus larges. Comme ces modèles traitent des informations personnelles, nous devions repenser Cloud Compute et élargir l’approche en matière de confidentialité de nos appareils aux serveurs. Private Cloud Compute est spécifiquement conçu pour traiter l’IA de manière confidentielle. Il fonctionne sur un nouvel OS utilisant un ensemble consolidé des bases d’iOS issu de nos travaux de pointe sur la sécurité de nos systèmes opérationnels. Pour mitiger des classes entières de risques en matière de confidentialité, nous avons omis des fonctionnalités qui ne sont pas strictement nécessaires dans un serveur IA dédié, telles que le stockage persistant des données. En plus de cette base sécurisée, nous avons entièrement remplacé les outils généralement utilisés pour gérer les serveurs. Notre outillage est conçu pour empêcher l’accès privilégié, comme par le biais d’un shell distant, qui autoriserait l’accès aux données des utilisateurs. Et enfin, Private Cloud Compute inclut une pile d’apprentissage automatique complète qui alimente l’intelligence. Le résultat est une base de sécurité du cloud sans précédent fondée sur Apple Silicon. Elle commence par Secure Enclave pour protéger les clés de cryptage importantes. Secure Boot garantit que l’OS est signé et vérifié tout comme sur iOS, Trusted Execution Monitor assure que seul un code signé et vérifié est exécuté, et Attestation permet à l’appareil d’un utilisateur de vérifier de manière sécurisée l’identité et la configuration d’un cluster Private Cloud Compute avant d’envoyer une requête quelconque. Pour chaque demande, l’appareil d’un utilisateur établit une connexion cryptée de bout-en-bout avec un cluster Private Cloud Compute. Seul le cluster choisi peut décrypter les données de la requête, qui ne sont pas conservées une fois la réponse envoyée et ne sont jamais accessibles par Apple. Mais nous allons encore plus loin : nous nous engageons à rendre les images virtuelles de chaque build de production de Private Cloud Compute publiquement disponibles pour une inspection par les chercheurs en sécurité, afin qu’ils puissent vérifier les promesses que nous faisons, et les résultats seront récompensés par le biais d’Apple Security Bounty. Ensuite, nous nous assurons que l’appareil d’un utilisateur ne communiquera uniquement avec des clusters Private Cloud Compute qui exécutent un build signé qui a été enregistré publiquement pour une inspection. Cela est vérifié à l’aide des mécanismes solides d’attestation cryptographique dans Apple Silicon. Nous considérons qu’il s’agit de l’architecture de sécurité la plus avancée jamais déployée pour le cloud computing d’IA à grande échelle. Apple Intelligence est le système d’intelligence personnel qui rassemble tout cela. Il comprend un répertoire sémantique sur appareil qui peut organiser les informations personnelles depuis l’ensemble des apps, ainsi qu’une App Intents Toolbox qui peut comprendre les capacités des apps et les exploiter pour le compte de l’utilisateur ou de l’utlisatrice. Lorsqu’un utilisateur effectue une requête, Apple Intelligence orchestre la manière dont elle est traitée soit au moyen de sa pile d’intelligence intégrée, soit à l’aide de Private Cloud Compute. Et elle utilise son répertoire sémantique pour ancrer chaque requête dans le contexte personnel pertinent et son App Intents Toolbox pour effectuer des actions pour le compte de l’utilisateur. Sa spécialisation lui permet d’exceller dans les fonctionnalités qu’elle génère. Une performance et une efficacité énergétique optimales ont été incluses, et sa conception intègre confidentialité et sécurité dès le départ. C’est ça, Apple Intelligence. Nous avons de nouvelles API pour inclure ces fonctionnalités dans vos apps, et de nouveaux moyens pour vos apps de dévoiler leurs capacités à Apple Intelligence pour une intégration plus poussée dans les expériences du système. Commençons par nos fonctionnalités de langage et d’images : Writing Tools, Genmoji et Image Playground. Voici Leslie pour vous en dire plus. Nos Writing Tools sur l’ensemble du système utilisent les modèles dont Seb vient de vous parler, pour aider les utilisateurs à réécrire, relire et résumer du texte. Si vous utilisez n’importe quel framework d’UI standard pour afficher des champs de texte, votre app inclura automatiquement Writing Tools ! Et en utilisant notre nouvelle API déléguée TextView, vous pouvez adapter la façon dont vous voulez que votre app fonctionne quand Writing Tools est actif, par exemple en mettant en pause la synchronisation pour éviter les conflits pendant qu’Apple Intelligence analyse un texte. Ainsi, pour une app comme Weebly, Writing Tools peut aider les propriétaires de petites entreprises à trouver le mot parfaitement adapté à leurs nouveaux sites Web ! Et lorsqu’il s’agit d’images, Genmoji offre des moyens entièrement nouveaux de communiquer, en permettant aux utilisateurs de créer un nouvel emoji pour chaque moment. Si vous utilisez déjà nos systèmes de texte standard avec images intégrées, vous n’aurez aucun problème ! Il vous suffit de définir une seule propriété, et TextView acceptera désormais les Genmoji à partir du clavier. Contrairement aux apparences, les Genmoji sont traités différemment des emoji. Alors que les emoji sont simplement du texte, les Genmoji sont traités à l’aide d’AttributedString, un type de données que nous utilisons depuis des années pour représenter du texte enrichi avec des graphiques. Apple Intelligence offre également d’incroyables nouvelles capacités pour créer des images amusantes et originales sur différentes apps. La nouvelle API Image Playground offre une expérience cohérente, ludique et facile à utiliser. Lorsque vous l’adopterez, vous aurez accès à la même expérience à laquelle les utilisateurs sont habitués avec Messages, Keynote et la nouvelle app Image Playground. Et comme les images sont créées sur l’appareil de l’utilisatrice, la possibilité d’expérimenter et de créer des images est infinie. Et vous n’avez pas à vous soucier de configurer ou de payer pour vos propres serveurs ou modèles texte-à-image pour proposer cette expérience dans vos propres apps. Voyons à quel point il est facile de commencer.

    Ici, je suis dans Xcode, et je travaille sur une app appelée Destination Video. Je veux utiliser la nouvelle API Image Playground pour que les utilisateurs puissent ajouter des avatars marrants à leur profil. Je vais donc ajouter un court bit de code SwiftUI à mon bouton de profil pour créer la feuille Image Playground. Maintenant, je vais ajouter du code pour stocker la nouvelle image. Enfin, je vais ajouter une description de texte pour fournir aux utilisateurs un avatar par défaut sur lequel travailler. Appuyons maintenant sur créer et exécuter, et voyons ce que ça donne ici sur mon iPad. Mon bouton de profil est là. Maintenant, quand j’appuie dessus, l’affichage Image Playground apparaît, et hop, j’obtiens un avatar de fantaisie que je peux utiliser pour mon profil. Et les utilisateurs et utilisatrices peuvent appuyer sur les bulles ou modifier l’invite que nous leur avons fournie pour créer tout ce qu’ils ou elles veulent.

    Writing Tools, Genmoji et Image Playground sont trois puissantes nouvelles fonctionnalités d’Apple Intelligence, et vous réjouirez vos utilisateurs en les intégrant dans vos apps. Il existe un autre moyen d’intégrer Apple Intelligence dans votre app : Siri ! Cette année, grâce à Apple Intelligence, Siri sera capable d’effectuer des centaines de nouvelles actions au sein et sur l’ensemble des apps, dont certaines qui utilisent les nouvelles capacités d’écriture et de génération d’images dont nous venons de parler. Cela est possible grâce aux améliorations significatives que nous apportons à App Intents. App Intents est un framework qui vous laisse définir un ensemble d’actions pour Siri, Shortcuts et d’autres expériences système, et App Intents est maintenant un outil puissant pour que votre app puisse exploiter Apple Intelligence. Nous commençons par la prise en charge pour ces domaines, et avec le temps, nous en ajouterons davantage. Et si vous avez une app compatible avec un domaine SiriKit existant, elle peut aussi bénéficier des nouvelles capacités de conversation de Siri, comme répondre correctement même si on écorche les mots et comprendre des références à des moments antérieurs de la conversation. Siri possède également deux nouvelles capacités dont les apps peuvent bénéficier sans aucun travail supplémentaire. Tout d’abord, Siri sera capable d’invoquer tout élément des menus de votre app. Ainsi, si une utilisatrice qui révise des diapositives dit « Afficher mes notes » ou de manière plus conversationnelle « Je veux voir mes notes de présentateur », Siri saura exactement quoi faire. Ensuite, Siri aura la possibilité d’accéder au texte affiché dans n’importe quelle app qui utilise nos systèmes de texte standard. Cela permettra aux utilisateurs de directement référencer et effectuer une action sur le texte visible à l’écran. Ainsi, si une personne voit un rappel de souhaiter bon anniversaire à grand-père, elle peut juste dire « Appeler sur FaceTime ».

    C’est donc ainsi qu’on effectue une action en utilisant Siri. Parlons maintenant de la manière dont Apple Intelligence équipe Siri de la compréhension du contexte personnel. Apple Intelligence peut maintenant accéder à un répertoire sémantique de choses comme des photos, des messages, des fichiers, des évènements de calendrier et bien plus, pour l’aider à trouver et à comprendre des choses qu’elle ne pouvait pas avant. Siri sera à présent également capable de rechercher des données dans votre app, avec la nouvelle API Spotlight qui permet d’ajouter App Entities à son répertoire. Et quand App Intents et App Entities sont regroupées, de nouvelles possibilités s’ouvrent à vos utilisateurs pour connecter du contenu issu de l’ensemble du système aux actions prises en charge par votre app. Par exemple, l’utilisateur peut transférer un résumé issu d’une note qu’il ou elle vient de créer dans l’app Notes dans un brouillon d’e-mail qu’il ou elle vient de rédiger dans Superhuman. Une fois le brouillon d’e-mail défini comme une entité de l’app pour l’index l’utilisateur peut s’y référer de manière conversationnelle. Et Siri peut transférer un contenu de la note exactement là où l’utilisateur le souhaite dans l’app Superhuman. Que vous créiez de nouvelles App Intents et App Entities, ou ayez des intégrations SiriKit existantes, Apple Intelligence permettra à Siri d’obtenir plus que jamais un accès beaucoup plus profond et naturel aux données et aux capacités de vos apps. Révéler la capacité de votre app en utilisant App Intents est la clé de cette intégration, et vous pouvez commencer dès aujourd’hui. Les utilisateurs pourront immédiatement utiliser vos App Intents avec Shortcuts, et avec le temps, Siri acquerra la capacité de faire appel aux App Intents qui se trouvent dans les domaines pris en charge. Des schémas d’App Intent pour deux domaines sont déjà disponibles, et d’autres le deviendront plus tard cette année. Et les mises à jour logicielles incluront les actions intégrées aux apps et la compréhension du contexte personnel dont nous venons de parler. Je repasse la parole à Seb. Nous avons donc vu nos fonctionnalités de langage et d’images, ainsi que la nouvelle Siri optimisée avec Apple Intelligence. Et si vous exécutez vos propres modèles et recherchez un niveau plus bas d’accès à la pile pour profiter d’un matériel accéléré par l’IA, il existe de nombreuses autres façons d’utiliser l’apprentissage automatique et l’IA sur appareil au sein de votre app. Voici Manasi pour vous en dire plus. Nos frameworks d’apprentissage automatique intégrés offrent des capacités d’intelligence sur un ensemble de catégories. Elles incluent des API pour le traitement du langage naturel, l’analyse des sons, la compréhension du langage et l’intelligence visuelle. Le framework Vision acquiert une toute nouvelle API Swift cette année. Il existe un grand nombre de capacités à exploiter au sein de ces frameworks. Et vous pouvez les élargir en utilisant Create ML afin d’ajouter de nouvelles données pour l’apprentissage. Par exemple, si vous avez un ensemble unique de données d’images, vous pouvez augmenter nos modèles d’images avec vos données pour améliorer la classification et la détection d’objets. Et au-delà de nos frameworks, vous pouvez importer et exécuter des modèles d’IA sur appareil, comme de larges modèles de langage ou de diffusion développés et formés ailleurs. Vous pouvez exécuter une vaste gamme de modèles sur l’ensemble de nos appareils, dont Whisper, Stable Diffusion et Mistral. Un modèle peut être prêt à être exécuté dans votre app en quelques étapes seulement. Vous pouvez commencer avec n’importe quel modèle PyTorch. Ensuite, vous utilisez Core ML Tools pour le convertir au format Core ML. Core ML Tools vous offre plusieurs moyens d’optimiser votre modèle, en s’appuyant sur les nombreuses techniques utilisées dans Apple Intelligence, telles que la quantification et la mise en cache efficace des valeurs clés dans les LLM. Vous exécutez ensuite votre modèle au sein de votre app avec le framework Core ML. Core ML optimise l’exécution accélérée par le matériel dans le CPU, le GPU et le Neural Engine, et inclut un certain nombre de nouveaux outils pour que vous puissiez optimiser davantage la performance de votre modèle. Core ML est le framework le plus souvent utilisé pour exécuter des modèles d’IA dans le cadre d’apps sur iOS, iPadOS et macOS. Lorsque les tâches d’apprentissage non automatique de votre app sont lourdes, vous pourriez souhaiter mieux contrôler le moment où les tâches d’apprentissage automatique sont exécutées pour gérer la performance globale. Par exemple, si votre app a des charges de travail graphique importantes, Metal fournit des moyens de séquencer vos tâches d’apprentissage automatique avec les autres charges de travail en utilisant Metal Performance Shaders, pour vous permettre d’obtenir la meilleure performance du GPU. Et si vous exécutez un traitement du signal en temps réel sur le CPU, le framework Accelerate inclut BNNS Graph pour vos tâches d’apprentissage automatique, afin de maintenir un contrôle plus strict sur la gestion de la latence et de la mémoire. Voyons maintenant comment cela fonctionne et comment les nouvelles optimisations peuvent améliorer l’exécution des modèles. Nous utilisons le modèle de paramètres Mistral 7B de Hugging Face Space de Mistral. Il a été converti au format Core ML, et il fonctionne au sein d’une app test créée à l’aide du package Swift Transformers. Sur macOS Sonoma, il fonctionne en tant que modèle 16 bit. Pour macOS Sequoia, nous avons appliqué la dernière quantification 4 bit et les techniques de cache KV avec état dans Core ML. Nous avons donné au modèle une question simple : Quelle est la quantification du modèle ML en trois phrases ? Vous voyez qu’avec ces optimisations, le modèle peut produire une réponse plus de 5 fois plus rapide avec près de 9 fois plus d’économie de mémoire peak. La quantisation est une technique puissante mais peut affecter la qualité de la sortie. Des test et des réglages supplémentaires sont donc recommandés. Pour ceux d’entre vous qui explorent les toutes dernières techniques, notamment les modèles d’apprentissage, le Mac est la meilleure plateforme ! Que vous utilisiez PyTorch, TensorFlow, JAX ou MLX, vous pouvez profiter pleinement de l’accélération matérielle et de la mémoire unifiée d’Apple Silicon lorsque vous formez les modèles. Notre travail sur l’apprentissage automatique et l’IA est collaboratif. Nous nous associons à d’autres personnes au sein de la communauté de recherche pour faire progresser la technologie de pointe tous ensemble, et vous pouvez trouver la recherche qui en résulte en ligne. Nous avons publié des centaines d’articles sur de nouvelles approches de modèles d’IA et d’optimisations sur appareil, et plusieurs incluent un échantillon de code et des ensembles de données. Et nous partageons de nombreux outils que nous utilisons pour la recherche en open source. Vous avez des moyens infinis d’explorer l’IA sur appareil avec les plateformes Apple. Et grâce à l’évolution rapide de la technologie d’apprentissage automatique, Apple continue à pousser la recherche de pointe dans cet espace. Je repasse maintenant la parole à Seb. Nous sommes au début d’une grande aventure. Apple Intelligence est vraiment une intelligence puissante pour vos appareils les plus personnels. Nous continuerons à inclure l’intelligence générative au cœur des plateformes Apple et à dévoiler de nouvelles capacités à intégrer dans vos apps. L’intelligence générative transforme également notre façon à tous d’écrire du code, et nous ajoutons d’incroyables nouvelles capacités d’intelligence à nos outils de développement. Voici Ken pour vous en dire plus.

    Chaque jour, des millions de personnes dans le monde utilisent Xcode pour le développement, afin que leurs idées voient le jour sur les plateformes Apple. Xcode vous aide à écrire un code Swift de qualité, il crée de magnifiques expériences avec SwiftUI, permet d’expérimenter rapidement dans les Simulators pour les appareils et systèmes d’exploitation d’Apple, d’obtenir des informations détaillées sur la performance à l’aide d’Instruments, et de tester et distribuer à tous vos utilisateurs avec Xcode Cloud. Tout cela fonctionne collectivement de manière fluide pour que vous puissiez vous concentrer, travailler vite et exprimer pleinement votre créativité. Xcode 16 ouvre un tout nouveau chapitre pour le développement, car nous injectons la puissance des modèles génératifs dans nos outils. À partir du modèle Foundation d’Apple, nous avons créé des modèles de codage spécialisés qui capturent l’expertise que seul Apple peut fournir, comme les dernières API, les fonctionnalités de langage, la documentation, l’échantillon de code et les bonnes pratiques issues de décennies de développement de logiciel pour toutes nos plateformes. Et tout débute avec les progrès majeurs d’une fonctionnalité de base que vous utilisez chaque jour, la complétion de code, avec un nouveau moteur innovant qui prédit le code dont vous avez besoin. Ce moteur est alimenté par un modèle unique formé spécifiquement pour les SDK Swift et Apple. Il utilise les symboles de votre projet pour personnaliser les suggestions. Et il fonctionne localement sur votre Mac, maintenant votre code confidentiel, vous offrant des résultats extrêmement rapides, et fonctionne même hors ligne. Voyons cela d’un peu plus près. Je travaille sur une app qui propose des vidéos divertissantes provenant du monde entier. Ma prochaine tâche est d’ajouter un code pour représenter une collection de vidéos. Il me faut un nom pour ma collection. Dès que je commence à taper, j’obtiens une excellente suggestion. Je vais appuyer sur tab pour l’accepter. Je veux également une propriété pour contenir un éventail de vidéos. Là encore, Xcode finit la ligne avec un type issu de mon propre projet. Ensuite, je veux une fonction qui me renvoie une liste classée de vidéos. Je vais commencer à taper le nom, et j’obtiens une suggestion pour une fonction qui renvoie un éventail de vidéos classées par date de publication. Dès que je l’accepte, j’obtiens également une suggestion d’implémentation. En plus du code dans mon projet, Xcode peut utiliser les commentaires que j’écris en tant que contexte. Je vais ajouter un commentaire pour une fonction qui renverra une liste de vidéos pour un réalisateur donné. Et avec seulement quelques caractères, j’obtiens une suggestion correspondant exactement à ce que j’avais en tête. Je vais ensuite ajouter le début d’une fonction pour avoir la vignette en cache d’une vidéo, et pendant que je tape et choisis une des suggestions, tous les paramètres sont alors remplis pour ma sélection. Enfin, je vais ajouter le corps pour ma vue. Et en maintenant Option appuyé, j’obtiens plusieurs lignes de code prédit, puis j’appuie sur tab pour les accepter toutes. Le modèle de complétion Xcode est alimenté par Apple Silicon et les améliorations d’apprentissage automatique dans macOS Sequoia. Et Xcode télécharge et met à jour automatiquement le modèle avec les dernières modifications SDK et de langage. Créer une app n’est pas seulement taper du code. C’est transformer des idées entières en code. Et la manière la plus facile de le faire, c’est avec le langage naturel. Nous avons donc créé un modèle plus large et plus puissant qui fonctionne sur le cloud. Et nous avons conçu une expérience unique dans Xcode que seul Apple pouvait délivrer. Voici Swift Assist, un compagnon pour toutes vos tâches de codage. Que vous sachiez exactement ce que vous recherchez ou que vous ayez besoin d’aide pour écrire le meilleur code Swift, Swift Assist peut répondre à vos questions en matière de codage et vous aider pour des tâches comme expérimenter avec les nouvelles API. Swift Assist est une excellente nouvelle manière de coder. Je vais vous montrer. J’ai toujours voulu créer une app de catalogage des anciens Mac de mon garage. Je vais commencer avec un projet vide, puis ouvrir Swift Assist et demander ce que je souhaite faire. Swift Assist est excellent pour la création de prototypes. Il peut m’aider à visualiser rapidement une idée. Ici, il crée une structure qui représente un ancien Mac, avec son nom et ses détails. J’ai même un échantillon de données réalistes que je peux voir en aperçu. C’est un très bon début. Et si ensuite j’ajoutais des images ? Je vais demander d’« ajouter des images à côté de chaque Mac ». J’avais déjà des images dans mon catalogue d’actifs. Et Swift Assist peut y faire référence dans le code qu’il crée. Ma structure ClassicMac est mise à jour pour inclure une propriété imageName, puis l’échantillon de données est mis à jour avec les noms des images de mon catalogue. Jusque-là, c’est pas mal du tout ! Une de mes choses préférées dans les anciens Mac, c’est le son de démarrage. J’ai fait quelques enregistrements et je les ai ajoutés à mon projet, alors on va faire une chose amusante. Je vais demander de « jouer un son quand je tapote sur un Mac ». Et comme pour la complétion de code, Swift Assist utilise les détails de mon projet, y compris les symboles et les relations entre eux, pour créer un code personnalisé.

    Voyons ce que ça donne.

    Ça nous rappelle des beaux souvenirs ! Enfin, je veux essayer une disposition différente. Voyons à quoi ça ressemble quand j’utilise une grille plutôt qu’une liste.

    Ce qui était juste une idée il y a quelques minutes, je peux maintenant l’exécuter sur mon appareil. Pas mal, non ?

    Swift Assist connaît les tout derniers SDK et fonctionnalités du langage Swift d’Apple, donc vous obtiendrez toujours un code moderne et actualisé qui s’intègre parfaitement à votre projet. Donc maintenant, les tâches comme explorer de nouveaux frameworks et expérimenter de nouvelles idées sont à portée de doigt. Comme tous les services de développement Apple, Swift Assist est créé en tenant compte de la sécurité et de votre confidentialité. Votre code n’est jamais stocké sur le serveur. Il est seulement utilisé pour traiter votre requête, et plus important encore, Apple ne l’utilise pas pour former les modèles d’apprentissage automatique. Swift Assist et les nouvelles complétions prédictives mettront le turbo sur votre manière de travailler dans Xcode. Cela marque le début d’une aventure qui apportera une intelligence extraordinaire à nos outils. Le développement pour les plateformes Apple vit un moment excitant. Il y a bien d’autres fonctionnalités dans Xcode 16 pour améliorer votre productivité et la qualité de vos apps, comme une vue unique de vos traces d’appel, montrant le code correspondant pour toutes les séquences de pile ensemble, un « graphique flamme » de vos données de profilage dans Instruments, vous donnant davantage d’informations sur la performance de votre app, et des améliorations aux catalogues de localisation, pour que vous puissiez proposer votre app à encore plus de personnes dans le monde. La première version bêta de Xcode 16 est déja disponible, avec la nouvelle complétion prédictive pour les Mac Apple Silicon. Et Swift Assist sera disponible plus tard cette année. Voyons maintenant toutes les modifications fascinantes apportées à Swift. Et Ted est là pour vous en parler. Swift est le langage de programmation révolutionnaire à la fois accessible pour les novices et puissant pour les experts. Il est rapide, moderne, sûr, et un plaisir pour l’écriture. Cette année, Swift célèbre son 10ème anniversaire !

    C’est le bon moment de réfléchir au chemin parcouru jusqu’à présent et d’établir l’itinéraire pour la prochaine décennie de Swift. Avant Swift, le logiciel sur les appareils Apple était principalement programmé en utilisant C, C++ et Objective-C. Nous avons créé Swift pour qu’il soit un langage de programmation expressif et plus sûr qui simplifierait le processus d’écriture de logiciels. Swift est un langage idéal pour le développement des apps, et est utilisé sur près d’un million d’apps. Mais Swift n’est pas seulement idéal pour les apps. Apple utilise Swift sur l’ensemble de sa pile logicielle, des apps et services systèmes aux frameworks, en passant par les micrologiciels comme Secure Enclave. Il est aussi utilisé pour les services réseau comme Private Cloud Compute. Au fur et à mesure que Swift évolue, il devient un choix incontournable même pour le code le plus sûr et le plus sensible à la performance. La sécurité, la rapidité et l’accessibilité de Swift, associées à une interopérabilité C et C++ intégrée, signifient que Swift est le meilleur choix pour réussir avec C++. Apple s’engage à adopter Swift dans ses codebases C++, et passer à Swift améliorera la qualité du logiciel, à la fois chez Apple et pour l’ensemble de l’industrie. Dans la perspective des dix prochaines années de Swift, nous travaillons avec la communauté open source pour utiliser Swift sur davantage de plateformes et domaines. D’abord, pour rencontrer les équipes de développement là où elles se trouvent, nous investissons dans une assistance pour Swift au sein de Visual Studio Code et d’autres éditeurs qui utilisent le Language Server Protocol. Nous élargissons également l’assistance Linux pour inclure Debian and Fedora, et pour améliorer l’assistance Windows. Et le site Swift.org comporte une variété de guides proposés par la communauté sur son utilisation pour divers domaines, comme créer un service web avec Vapor. La communauté Swift a été essentielle à son succès. Les bibliothèques et outils open source soutiennent de nombreuses choses que vous créez à l’aide de Swift dans l’écosystème logiciel au sens large. Afin de soutenir davantage la communauté et de favoriser une plus grande collaboration, nous sommes ravis d’annoncer une nouvelle organisation GitHub dédiée à Swift sur github.com/swiftlang. Cette nouvelle organisation accueillera un certain nombre de projets importants pour l’écosystème Swift, notamment le compilateur Swift, Foundation et d’autres bibliothèques essentielles. Cette année, un nouveau lancement excitant aura également lieu, avec le lancement de Swift 6. Swift 6 rend la programmation concurrente significativement plus facile en introduisant la sécurité des courses de données. Une course de données survient lorsque différentes parties du code tentent de modifier et d’accéder aux mêmes données simultanément. Swift 6 élimine ces types de bugs en les détectant au moment de la compilation. Depuis le lancement d’async/await, de l’accès concurrent structuré et des acteurs, Swift a progressivement acquis les bases nécessaires pour fournir une sécurité complète des courses de données, culminant dans le nouveau mode de langage de Swift 6, et permettant d’obtenir une sécurité des courses de données au moment de la compilation. La sécurité des courses de données pouvant impliquer des modifications de votre code, le nouveau mode de langage Swift 6 est en option. Vous pouvez en profiter au moment opportun pour traiter les courses de données dans votre code. Lorsque vous activez le mode de langage Swift 6, le compilateur détectera un accès concurrent à la mémoire sur l’ensemble de votre projet, et vous pourrez résoudre de nombreuses erreurs de sécurité de courses de données avec peu de modifications de votre code. Vous pouvez passer à Swift 6 par incréments, un module à la fois. Il n’est pas non plus nécessaire d’attendre que vos dépendances migrent, et quand elles migrent, vous n’avez pas à effectuer de modification de votre code jusqu’à ce que vous décidiez d’utiliser le nouveau mode de langage. Chaque module qui effectue une migration vers Swift 6 contribue à la transition de l’ensemble de la communauté pour inclure la sécurité des courses de données dans l’écosystème logiciel Swift. Vous pouvez aussi y contribuer en mettant à jour vos paquets open source à Swift 6, et tout le monde peut adopter Swift 6 pour les paquets populaires sur SwiftPackageIndex.com. Swift.org comprend également un guide de migration avec des conseils et schémas sur la meilleure façon de modifier votre code pour éliminer les courses de données. La sécurité des courses de données au moment de la compilation dans Swift 6 améliorera davantage la sécurité de votre code et assurera sa maintenabilité à l’avenir. Et il y a de nombreux autres développements excitants dans Swift 6, ainsi que des améliorations de l’accès concurrent, les génériques et un nouveau sous-ensemble « Embedded Swift » pour cibler des environnements fortement contraints, comme les noyaux et microcontrôleurs des systèmes d’exploitation. Les tests d’écriture sont un autre aspect important du développement logiciel. Nous sommes ravis de présenter un tout nouveau framework de test, entièrement créé pour Swift. Il a été adéquatement nommé Swift Testing. Swift Testing possède des API expressives qui facilitent l’écriture de tests. Il est facile à comprendre et multiplateforme, et vous pouvez donc l’utiliser pour créer des tests pour une variété de plateformes et de domaines. Swift Testing est aussi développé en tant que paquet open source. Il a été lancé il y a neuf mois, et les commentaires issus de la communauté ont été extrêmement utiles. Créer un test commence tout simplement par ajouter une fonction avec l’attribut Test à votre suite de test. Vous pouvez fournir un titre simple et utiliser des macros comme #expect pour évaluer le résultat de n’importe quelle expression Swift, ce qui facilite l’écriture de vérifications complexes. Swift Testing inclut également un système de tagging flexible pour vous aider à organiser vos tests et plans de tests. Avec les tags, vous pouvez exécuter des tests sélectivement sur toute votre suite, comme ceux utilisant un certain module ou exécutés sur un appareil spécifique. Et quelques lignes de code suffisent pour paramétrer facilement les tests, afin qu’ils puissent être réutilisés plusieurs fois, en répétant la même logique sur une séquence de valeurs. Xcode 16 est entièrement compatible avec SwiftTesting. Le navigateur de tests organise les tests par tag, affiche les tests paramétrés, et l’éditeur de source possède une riche présentation en ligne pour permettre de diagnostiquer l’erreur lorsqu’un test échoue. Swift Testing profite pleinement de la puissance de l’accès concurrent dans Swift, en exécutant tous les tests de manière sûre en parallèle. Il est conçu pour tous les cas d’utilisation de Swift, avec une assistance intégrée à la fois dans Xcode et dans Visual Studio Code. Swift nous a tous aidés à écrire un code plus sûr et de meilleure qualité, et nous avons hâte de voir Swift continuer à transformer les logiciels dans le monde. En faisant évoluer Swift et les frameworks d’Apple ensemble, nous atteignons des niveaux plus hauts de productivité et d’expressivité, et cela n’est nulle part plus puissant qu’avec SwiftUI. Voici Josh pour vous en parler. SwiftUI est la meilleure façon de créer des apps pour n’importe quel appareil Apple. Tout comme le langage Swift, SwiftUI est facile à apprendre et rempli de fonctionnalités avancées. Sa conception s’appuie sur une expérience approfondie dans la création d’applications qui fonctionnent sur tous les appareils et s’intègrent aisément sur l’OS sous-jacent. Lorsque vous créez des apps avec SwiftUI, vous pouvez vous concentrer sur la description de l’UI que vous souhaitez, et SwiftUI s’occupe des détails comme le mode sombre, le type dynamique et le suivi des modifications dans votre modèle. En vous permettant d’exprimer ce que vous souhaitez, et pas comment le créer, SwiftUI vous permet de partager davantage de votre code dans plus d’appareils. Bien sûr, vous pouvez quand même personnaliser et régler avec précision l’aspect et la convivialité fournis par SwiftUI à l’aide d’un vaste ensemble de modificateurs et de protocoles afin d’obtenir exactement le résultat recherché. Que vous créiez une toute nouvelle app ou une nouvelle fonctionnalité au sein d’une app existante, SwiftUI est l’outil parfait à utiliser. C’est exactement ce que nous faisons pour l’adoption de SwiftUI chez Apple. Il y a de toutes nouvelles apps entièrement créées avec SwiftUI, comme Image Playground, une nouvelle app avec une interface stylée personnalisée. Et la nouvelle app Passwords, dont l’aspect et la convivialité sont plus standard, créée à partir de formes et de commandes familières. On utilise aussi SwiftUI pour de nouvelles fonctionnalités dans des apps existantes, comme la toute nouvelle conception de Photos, où des éléments reconçus à l’aide de SwiftUI fonctionnent côte à côte avec des modes d’affichage préexistants, tels que la grille de photos. SwiftUI nous a également permis de partager davantage de code entre les plateformes, comme pour Music, qui a adopté SwiftUI en premier pour visionOS et tvOS, et qui l’utilise maintenant pour consolider et simplifier sa base de code également sur iOS et iPadOS. Un grand nombre d’apps et d’expériences sur l’ensemble de nos plateformes ont adopté SwiftUI ces dernières années. SwiftUI est utilisé dans des apps comme Xcode, Pages et Music, et des expériences système comme Control Center, Notification Center et Finder. Pour watchOS, SwiftUI est largement utilisé, notamment dans des apps essentielles comme Workout, Activity et Sleep. Et dans visionOS, SwiftUI est le choix idéal pour créer une app spatiale. Avec l’utilisation de plus en plus fréquente de SwiftUI, nous continuons à faire des investissements sur plusieurs années pour l’expérience du développement. Une priorité cette année a été les Previews, la personnalisation et l’interopérabilité. Tout d’abord, Xcode Previews présente une nouvelle architecture de liaison dynamique utilisant les mêmes artefacts de création pour les Previews et la création-exécution. Cela évite de recréer votre projet lorsque vous passez de l’un à l’autre, rendant votre flux de travail significativement plus fluide et productif. Et il est maintenant aussi plus facile de configurer Previews. Une nouvelle macro @Previewable permet d’utiliser des propriétés dynamiques comme @State directement dans un Xcode Preview, réduisant ainsi la quantité de code que vous avez à écrire. SwiftUI a également acquis un certain nombre de personnalisations pour régler précisément l’aspect et la convivialité de vos apps, comme les effets de survol personnalisés pour visionOS, qui donnent à vos utilisateurs davantage de contexte lors d’interactions avec des éléments de l’UI, de nouvelles options pour adapter le comportement des fenêtres et le style dans macOS, pour un contrôle de la barre d’outils et de l’arrière-plan de la fenêtre par exemple, et une nouvelle API de rendu textuel offrant une toute nouvelle qualité d’effets visuels et d’animations ludiques. Beaucoup d’apps adoptant SwiftUI utilisent aussi des vues créées avec UIKit et AppKit, une interopérabilité de qualité avec ces frameworks est donc essentielle. Pour l’obtenir, une intégration profonde avec les frameworks eux-mêmes est nécessaire. Cette année, toutes nos frameworks UI ont davantage de bases en commun. La reconnaissance des gestes a été exclue d’UIKit, vous permettant d’utiliser n’importe quel UIGestureRecognizer intégré ou personnalisé et de l’inclure dans votre hiérarchie de vues SwiftUI. Cela fonctionne même pour les vues SwiftUI qui ne sont pas directement prises en charge par UIKit, comme celles d’un groupe de dessins accéléré par Metal. Et les animations ont été exclues de SwiftUI, et elles peuvent donc être configurées à présent sur les vues UIKit ou AppKit et ensuite exécutées avec SwiftUI, y compris les animations entièrement personnalisées. Et bien sûr, il existe encore davantage de fonctionnalités intéressantes et utiles dans SwiftUI cette année, comme les containers personnalisés, les gradients de maillage, la personnalisation du défilement, et plus encore. Si vous n’utilisez pas déjà SwiftUI dans vos apps, il n’y a aucune raison d’attendre. SwiftUI est prêt à vous aider à créer l’interface utilisateur que vous voulez, avec une plus grande qualité et une plus faible quantité de code. Le langage de programmation Swift a commencé une révolution en matière de productivité et d’expression des API. De la bibliothèque standard et Foundation à SwiftUI et le nouveau Swift Testing, les API conçues pour Swift sont extrêmement plus faciles à utiliser, et elles augmentent votre productivité. Nous avons ajouté SwiftData à cette liste l’année dernière pour vous permettre de modéliser et de conserver les informations de votre app à l’aide d’une API légère qui semble tout à fait naturelle dans Swift. Vous pouvez définir votre schéma avec simplement quelques additions à une classe Swift normale en commençant par appliquer la macro @Model. C’est en fait tout ce que vous avez besoin de faire, mais vous pouvez l’améliorer en utilisant @Attribute pour spécifier les comportements sur des propriétés et @Relationship pour décrire la relation entre les modèles. Cette année, nous avons continué à utiliser la syntaxe simple et les capacités de modélisation de SwiftData avec l’ajout de #Index et #Unique. #Index rend vos requêtes plus efficaces en indiquant au stockage sous-jacent quelles propriétés sont couramment demandées ensemble, pour qu’elles puissent être stockées et récupérées plus rapidement. Et #Unique indique qu’un ensemble de propriétés ne peut avoir aucune entrée en double. La nouvelle macro @Previewable fonctionne également très bien avec SwiftData, pour traiter plus facilement vos requêtes tout en itérant sur les vues. Au-delà de ces ajouts de syntaxe, SwiftData possède aussi de plus grandes capacités pour le stockage de vos données et l’enregistrement des modifications, en commençant par les banques de données personnalisées. Les apps d’aujourd’hui sont créées avec une variété de moteurs de stockage. Et par défaut, SwiftData utilise Core Data pour stocker les informations. Avec une banque de données personnalisée, vous pouvez stocker des données en utilisant le moteur de votre choix. Il est donc possible d’utiliser l’API de SwiftData avec des moteurs comme SQLite, un service web à distance, ou même juste une collection cartographiée de fichiers JSON. Il y a vraiment beaucoup de flexibilité. Et SwiftData offre à présent un accès à l’historique des modifications dans une banque de données qui garde une trace de toutes les modifications survenues au niveau des données sous-jacentes, pour qu’il soit facile d’inspecter toutes les modifications récemment effectuées. Cela est utile pour suivre les modifications locales qui nécessitent d’être synchronisées sur un service web à distance. Ces nouvelles fonctionnalités permettent de travailler plus facilement avec les données, et cela en utilisant une API qui semble parfaitement naturelle dans Swift. Parlons à présent d’un nouveau framework important vous permettant de créer des expériences 3D et spatiales exceptionnelles. Il s’agit de RealityKit. RealityKit simplifie le processus de rendu des modèles 3D avec une variété de styles, comme réaliste, ombrage de celluloïde ou dessin animé. RealityKit a d’abord été disponible pour iPhone, iPad et Mac. Avec le lancement de Vision Pro, il a gagné d’importantes nouvelles capacités, ainsi qu’un tout nouvel outil, Reality Composer Pro, qui a simplifié le développement d’apps spatiales, mais avec lequel seul visionOS était compatible. Cette année, ces API et outils sont à présent également alignés pour macOS, iOS et iPadOS avec RealityKit 4. Vous pouvez donc développer facilement pour toutes ces plateformes en même temps. Tout ce que vous attendez, y compris MaterialX, Portals et Particles, est à présent disponible pour une utilisation avec RealityView sur ces quatre plateformes. Et cela inclut des API pour des matériaux et un éclairage virtuel riches, vous offrant un contrôle créatif sur la manière dont vos objets 3D apparaissent et interagissent avec l’environnement de l’utilisateur. Ainsi que des API et des outils entièrement nouveaux, comme BlendShapes, Inverse Kinematics et des chronologies d’animation qui offrent de plus grandes capacités d’animation de personnages, et permettent d’obtenir des interactions dynamiques and réactives avec l’environnement et le comportement de l’utilisateur. RealityKit 4 offre également un accès plus direct au rendu avec de nouvelles API pour Low Level Mesh et Textures, qui fonctionnent avec Metal Compute Shaders pour fournir un meilleur contrôle sur l’apparence de votre app, et activer des modèles et textures entièrement dynamiques dans chaque trame. Sur visionOS, ces outils fonctionnent sur le Shared Space et sur le Full Space d’une app. Il est également plus facile d’inspecter le contenu de votre RealityKit, car le débogage des vues d’Xcode permet à présent d’introspecter le contenu de vos scènes 3D. Vous pouvez examiner la hiérarchie des objets de votre scène et inspecter les propriétés de chaque élément, tant ceux intégrés dans RealityKit que les composants personnalisés que vous avez créés. Avec Swift et les frameworks comme SwiftUI, SwiftData et RealityKit, les SDK d’Apple permettent de facilement créer des apps sublimes et immersives. Ils incluent également des API puissantes qui élargissent la portée de vos apps aux espaces système, permettant une intégration dans les plateformes sous-jacentes. Jetons un coup d’œil à certaines des capacités des dernières versions OS de cette année. Et pour commencer, donnons la parole à Jonathan pour iOS. En plus d’Apple Intelligence, il existe de nombreuses nouvelles API pour toutes nos plateformes pour que vous ayez encore plus de possibilités. Commençons par iOS. Cette année, iOS est plus personnalisable que jamais, et tout commence avec Controls. Il rend l’accès aux tâches fréquentes depuis vos apps plus rapide et plus facile et représente un excellent moyen d’interagir avec votre app à partir d’un plus grand nombre d’endroits sur le système. Controls peut faire basculer un réglage, exécuter une action ou établir un lien profond directement avec une expérience spécifique. En utilisant la nouvelle API Controls, vous pouvez créer une commande en spécifiant le type, un symbole et une App Intent. Une fois définie, votre commande sera disponible aux utilisateurs et utilisatrices dans la nouvelle galerie Controls, à partir de laquelle ils ou elles peuvent l’ajouter dans leur Control Center pour pouvoir facilement y accéder. Les utilisateurs peuvent également assigner votre commande au bouton Action sur leur iPhone 15 Pro ou, pour la première fois, la faire apparaître comme une des commandes sur leur écran verrouillé. Et pour les apps qui utilisent la caméra, le nouveau framework LockedCameraCapture permet une capture même lorsque l’appareil est verrouillé. Voyons maintenant un autre moyen de mieux personnaliser iOS sur le Home Screen. Les icônes et widgets des apps peuvent à présent apparaître en clair, sombre ou tinté. Pour commencer, une version tintée de l’icône de votre app sera automatiquement disponible pour vos utilisateurs et utilisatrices une fois qu’ils ou elles auront effectué la mise à jour à iOS 18. Ce traitement est appliqué à toutes les icônes de l’app, et est créé de manière intelligente afin de préserver l’intention de votre design et de maintenir la lisibilité. Le résultat est une expérience visuelle homogène sur l’ensemble du Home Screen. Et quel que soit le rendu de votre icône, vous pouvez vous assurer qu’elle a toujours un bel aspect en personnalisant chaque version. Les Human Interface Guidelines ont mis à jour les modèles d’icônes et les bonnes pratiques pour adapter vos icônes à ces nouvelles apparences. Et Xcode prend maintenant en charge les variantes d’icônes sombre et tintée que vous pouvez ajouter directement dans votre catalogue d’actifs. De l’extension de vos commandes à l’ensemble du système à l’assurance d’une belle apparence pour les icônes et widgets de vos apps, iOS 18 vous offre des nouveaux moyens fantastiques de personnaliser l’expérience de vos apps pour les utilisateurs et utilisatrices. Passons maintenant à la sécurité. Il y a deux ans, la prise en charge des clés d’accès a été ajoutée dans iOS. Les clés d’accès remplacent les mots de passe et sont plus sûres, plus faciles à utiliser et ne peuvent pas être sujettes au phishing. Elles permettent de se connecter plus rapidement, de réinitialiser le mot de passe moins souvent et de réduire les coûts de l’assistance. Cette année, nous avons créé un moyen fluide de faire passer davantage de personnes aux clés d’accès avec une nouvelle API d’enregistrement. Elle crée automatiquement les clés d’accès pour les utilisateurs et utilisatrices admissibles la prochaine fois qu’ils ou elles se connectent à votre app, de sorte que les connexions futures seront plus faciles et plus sûres qu’avant. Une fois la clé d’accès créée, les utilisateurs et utilisatrices sont informés qu’une clé d’accès a été sauvegardée sans interrompre leur navigation. Si vous avez déjà adopté les clés d’accès, ajouter un enregistrement automatique pour les clés d’accès nécessite seulement un nouveau paramètre unique. Le moment présent est idéal pour effectuer la transition aux clés d’accès dans vos apps. Toutes ces fonctionnalités sont bien sûr également disponibles sur iPadOS. Cette année, iPadOS apporte des mises à jour importantes sur la façon dont vos utilisatrices interagissent avec vos apps, en commençant par le nouveau design de la barre des onglets. Elle flotte en haut de votre app et facilite la navigation vers vos onglets favoris. Et elle se transforme en barre latérale pour les moments où vous voulez explorer davantage, lorsque vous voulez explorer vos chaînes dans Apple TV, par exemple. Il existe une nouvelle API qui simplifie la création d’interactions importantes, comme la personnalisation, les menus et le glisser-déposer. Vous pouvez donc accomplir davantage avec moins de code. Si votre app possède une hiérarchie simple, vous pouvez juste adopter la barre des onglets. Et si sa hiérarchie est plus approfondie, vous pouvez implémenter la barre des onglets et la barre latérale avec la même API. Et vous pouvez même permettre aux utilisateurs d’adapter le contenu de la barre des onglets. Vous avez peut-être vu que la barre des onglets se transforme élégamment en barre latérale. Ces types d’animations raffinées sont aussi disponibles pour votre app. Par exemple, les utilisateurs et utilisatrices ont adoré la transition zoom dans Photos. Elle est précisément contrôlée par le toucher et peut même être interrompue en cours. Les animations interruptibles maintiennent l’aspect réactif de votre app pendant que les utilisateurs naviguent dans votre UI, car il n’y a pas besoin d’attendre que les animations s’arrêtent pour passer à la prochaine interaction. Vous pouvez profiter de la même transition zoom interruptible et fluide dans vos apps sur iOS et iPadOS. Cela fonctionne vraiment bien dans des apps comme Notes, où les notes s’ouvrent maintenant en animations superbes dans la vue Gallery et peuvent même être fermées en pinçant. Et vous pouvez aussi utiliser la nouvelle transition zoom avec une Document Launch View mise à jour. Cela vous permet de créer un aspect personnalisé de votre app et de relier l’expérience de lancement de votre app à votre marque. Vous pouvez personnaliser des actions, changer l’arrière-plan et ajouter des outils animés ludiques pour donner vie à l’en-tête. Ce ne sont que quelques-unes des nouveautés de l’API que vous pouvez exploiter pour mieux intégrer vos apps dans le système et améliorer l’expérience de vos clients et clientes sur iOS et iPadOS. Passons maintenant à watchOS, et voici Lori pour vous en dire plus. Apple Watch est la meilleure façon d’accéder aux informations les plus importantes de la journée en un seul coup d’œil. Depuis n’importe quel cadran, les informations et actions pertinentes se trouvent à l’aide d’un simple défilement de la couronne numérique. Cette année, watchOS 11 vous offre encore plus de possibilités d’incorporer des expériences fascinantes depuis votre app au Smart Stack avec de nouvelles API et en utilisant le code que vous avez déjà écrit. D’ailleurs, une des fonctionnalités les plus fascinantes cette année sur watchOS commence en réalité sur iOS : Live Activities. Si vous avez adopté Live Activities dans votre app iOS, le système utilisera le travail que vous avez déjà fait pour prendre en charge la Dynamic Island afin d’offrir une expérience Live Activity sur Apple Watch. Les porteurs et porteuses de Watch verront vos vues principale et secondaire compactes automatiquement dans le Smart Stack, et aussi lorsque des notifications d’évènements importants surviennent. Vous pouvez utiliser All Variants Preview dans Xcode 16 pour voir comment votre Live Activity apparaîtra sur watchOS avec votre Live Activity Widget Configuration, et vous pouvez même ajouter une présentation watchOS personnalisée en indiquant que vous prenez en charge la petite famille d’activités supplémentaires. Offrir à vos clients et clientes une belle expérience sur watchOS est aussi simple que d’utiliser @Environment pour personnaliser davantage votre vue Live Activity lorsqu’elle apparaît sur Apple Watch. Pour ceux et celles d’entre vous qui ont déjà une app watchOS ou qui prévoient d’en créer une, vous pouvez rendre vos expériences encore plus rapides, contextuelles et fonctionnelles en profitant des capacités élargies des widgets dans watchOS 11. Vous pouvez à présent inclure vos widgets interactifs dans watchOS, en utilisant les mêmes API que vous utilisez actuellement sur iOS and macOS. Les App Intents vous permettent de créer des widgets avec plusieurs zones interactives qui effectuent des actions et mettent à jour l’état directement dans le widget. Le nouvel arrangement du groupe de widgets des accessoires est un des moyens de fournir davantage d’informations et d’interactivité à vos clients et clientes. Il permet de contenir trois vues séparées et prend en charge à la fois les liens profonds vers différentes parties de votre app et les initialisateurs de boutons et bascules pour effectuer des actions sans sortir du widget. Pour garantir que vos widgets informatifs et interactifs apparaissent quand ils seront le plus utiles, vous pouvez maintenant spécifier un ou plusieurs contextes pertinents, comme l’heure de la journée, la connexion des AirPods, l’emplacement et la routine, de sorte que le système puisse les insérer dans le Smart Stack exactement au bon moment. Et si vous avez hâte d’intégrer Double Tap dans vos apps, handGestureShortcut est le modificateur que vous recherchez. Utilisez ce modificateur pour identifier un bouton ou une bascule comme action principale dans votre app, widget ou Live Activity pour offrir une commande rapide à une main. Live Activities, les widgets interactifs et contextuels, ainsi que Double Tap, sont juste quelques-unes des prochaines possibilités qui arriveront sur watchOS 11 cette année. Eric va maintenant vous parler plus en détail des mises à jour passionnantes pour macOS. Cette année, macOS prend en charge Apple Intelligence avec des fonctionnalités comme Writing Tools, Genmoji et Image Playground que vous pouvez intégrer directement dans vos apps pour créer des expériences engageantes. Des fonctionnalités de productivité ont aussi été ajoutées, comme une organisation plus facile des fenêtres et la mise en miroir pour iPhone, et des nouvelles API, dont une prise en charge pour le système fichiers de l’espace utilisateur et des améliorations majeures de MapKit. Parlons maintenant d’un domaine qui évolue incroyablement vite. Les jeux. Avec la vitesse de l’innovation dans Metal et Apple Silicon, un changement fondamental se produit. Sur chaque Mac Apple Silicon, chaque iPad avec puce M-series, et même sur le dernier iPhone 15 Pro, on peut maintenant avoir des types de jeux qui nécessitaient auparavant des systèmes de jeux dédiés avec des GPU discrets énergivores. Ces appareils Apple de niveau console créent une plateforme de jeux unifiée construite avec un logiciel graphique étroitement intégré et une architecture matérielle adaptable. Et chaque année, cette plateforme qui évolue rapidement offre de nouvelles avancées dans Apple silicon et Metal afin d’améliorer davantage l’expérience de jeu. Pour incorporer vos jeux haut de gamme dans cette plateforme et qu’encore plus de personnes puissent y jouer, un des meilleurs outils pour commencer est le Game Porting Toolkit. Et c’est formidable de voir à quel point les retours ont été positifs. Les équipes de développement comme Ubisoft peuvent incorporer leurs jeux dans les appareils Apple plus rapidement que jamais. Les enthousiastes du jeu ont pu évaluer des jeux Windows exigeants comme « Cyberpunk 2077 » pour la première fois sur leur Mac. Et nous sommes ravis de voir des projets de la communauté, comme Whisky et Homebrew, et des produits comme CrossOver, utiliser le Game Porting Toolkit afin de fournir encore plus d’options pour commencer le processus d’évaluation. Cette année, nous sommes fiers de présenter Game Porting Toolkit 2 et des mises à jour importantes basées sur vos commentaires, vous permettant d’accélérer le calendrier, que vous proposiez un jeu existant ou un jeu en cours de développement. De nouveaux ajouts au toolkit vous permettent de proposer des jeux plus avancés sur Mac, des jeux Mac sur iPad et iPhone, et d’offrir une excellente expérience utilisateur. Tout d’abord, voyons comment proposer des jeux avancés sur Mac. Avec le Game Porting Toolkit 2, vous pouvez à présent évaluer davantage de jeux Windows grâce à une meilleure compatibilité, avec des technologies comme AVX2 et des fonctionnalités de jeu avancées comme le ray tracing, vous offrant une idée plus précise de votre potentiel de jeu sur Mac. Et Metal ajoute des améliorations d’API très demandées permettant aux équipes de développement de DirectX de porter le code graphique existant. Gérer les ressources de Metal devrait paraître beaucoup plus familier, par exemple. Et Xcode ajoute une autre fonctionnalité très demandée, vous permettant de déboguer et de profiler la source de vos shaders HLSL originaux. Et cela à n’importe quelle étape du processus de développement, que vous évaluiez votre binaire Windows original ou déboguiez la version Metal de votre jeu. Une fois que vous avez un jeu Mac optimisé, il est alors beaucoup plus facile de proposer le jeu Mac sur iPad et iPhone, et cela vous offre l’opportunité d’accéder à une audience encore plus vaste. Il n’existe d’ailleurs aucune autre plateforme de jeux au monde qui permet aux équipes de développement de proposer des jeux comme « Death Stranding : Director’s Cut » sur bien plus d’une centaine de millions d’appareils de niveau console, allant des téléphones aux ordinateurs personnels. Pour que vous puissiez en faire de même, Game Porting Toolkit 2 inclut des exemples de code utiles pour accélérer votre développement en vous guidant à travers les étapes essentielles, comme la manière de convertir vos sous-systèmes de jeux variés, et de créer vos shaders une seule fois et de les déployer partout. Game Porting Toolkit 2 vous permet également d’offrir une excellente expérience utilisateur avec un ensemble plus important de Human Interface Guidelines pour profiter pleinement du matériel Apple. Des sujets importants sont également abordés, comme la meilleure façon de simplifier les téléchargements et l’installation, d’adapter l’UI de votre jeu à différentes tailles d’affichage, et créer des commandes tactiles faciles à utiliser et le mieux adaptées au style de votre jeu. Avec des améliorations clés apportées à Metal et une collection d’outils mise à jour sur l’ensemble des phases les plus importantes du développement de jeux, Game Porting Toolkit 2 facilite plus que jamais la création de jeux fantastiques sur les plateformes Apple. Les dernières versions du système d’exploitation regorgent de fonctionnalités qui vous aident à créer des expériences incroyables uniquement possibles avec les appareils Apple. Et Vision Pro a franchi une nouvelle étape dans ce domaine. Voici En qui va nous parler des nouveautés dans visionOS. Depuis qu’Apple Vision Pro a été annoncé lors de la WWDC l’année dernière, nous avons été ravis de l’enthousiasme de la communauté de développeurs ! Des développeurs du monde entier ont créé des apps spatiales incroyables pour visionOS. Dès les premiers jours de disponibilité, il y avait déjà plus de 1 000 apps sur l’App Store ! Certains de ces développeurs ont commencé par recompiler leurs apps iOS et iPadOS pour obtenir rapidement la disposition spatiale de l’UI visionOS et la développer. Par exemple, djay a commencé avec son app iPad basée sur SwiftUI, facilement recompilée pour fonctionner sur visionOS, puis l’a déployée pour l’informatique spatiale, et c’est une expérience fabuleuse ! Que vous ayez déjà une app visionOS ou que vous veniez de découvrir la plateforme, l’informatique spatiale offre des opportunités incroyables pour vos apps. visionOS est construit sur la base de décennies d’innovation en ingénierie dans macOS, iOS et iPadOS. Les outils et de nombreux framework que vous utilisez sont communs à ces plateformes. Vous pouvez écrire une ligne de code une seule fois et l’utiliser sur toutes les plateformes ! SwiftUI, RealityKit et ARKit sont au cœur du développement des meilleures apps spatiales pour visionOS. ARKit est un framework principal pour les expériences de RA sur les plateformes et alimente les expériences qui ont une interaction et une compréhension encore plus profondes du monde entourant l’utilisateur. Et cela est très puissant, car si votre app utilise actuellement l’un de ces frameworks, votre app d’informatique spatiale est déjà sur la bonne voie ! C’est avec grand plaisir que nous partageons des détails sur la manière dont visionOS 2 permet de créer de riches expériences spatiales qui tirent un plein avantage de la profondeur et de l’espace. Avec le lancement de l’informatique spatiale, nous avons créé un nouveau type de scène SwiftUI, appelée volume. Les volumes sont parfaits pour ajouter à une app des scènes et des objets 3D avec de riches interactions. Les apps peuvent être exécutées côte à côte et cela vous donne une vraie impression de la taille et de l’échelle des objets virtuels.

    Il s’agit d’une composante essentielle de l’informatique spatiale, faisant passer le multitâche spatial Vision Pro révolutionnaire à un niveau supérieur. Avec visionOS 2, il est maintenant facile de redimensionner votre volume. Comme avec une fenêtre, vous utilisez le modificateur de scène SwiftUI windowResizability pour définir la taille de votre volume en fonction de votre contenu. Et si ce n’est pas parfait, les utilisateurs peuvent redimensionner les volumes eux-mêmes. Vous pouvez aussi choisir d’attribuer une échelle fixe ou dynamique à votre volume, de sorte que lorsque l’objet 3D s’éloigne de l’utilisateur, il apparaît constant en termes de taille, ou bien devient plus petit tandis qu’il s’éloigne, comme un objet dans le monde réel. visionOS permet d’ajouter des ornements aux volumes. Cela est très utile pour les commandes, les informations supplémentaires et toute UI. Vous pouvez maintenant placer des ornements partout et beaucoup plus facilement à tout endroit sur le bord de votre volume, pour bénéficier de la liberté de créer l’interface de votre volume de manière nouvelle et astucieuse. Ces ornements, ainsi que le chrome et le contenu de l’app, peuvent aussi bouger de manière dynamique et s’ajuster selon le visage de l’utilisateur lorsqu’il se déplace dans l’espace. Vous pouvez voir les ornements, ainsi que le personnage, se déplacer en fonction de la position de l’utilisateur ! Nous avons donné à certains développeurs un aperçu de ces API volumétriques, comme « 1640 » qui exploite les API de redimensionnement des volumes, « Dear Reality » qui tire avantage de la manière dont les décorations changent de position en fonction de l’emplacement de l’utilisateur ou de l’utilisatrice, et « Rezzil », qui montre comment ces nouvelles fonctionnalités volumétriques créent ensemble une expérience incroyable pour l’analyse de jeu en temps réel, avec d’autres applications fonctionnant côte à côte. Apple Vision Pro aide les utilisateurs et utilisatrices à se connecter à leurs proches grâce à des expériences partagées avec les apps SharePlay. Pour faciliter davantage d’apps partagées, nous avons créé TabletopKit, un framework pour le développement aisé d’expériences collaboratives centrées autour d’une table. TabletopKit fait le gros travail, consistant à gérer la manipulation des cartes et des pièces, le placement et l’agencement, et l’établissement des plateaux de jeux. Il fonctionne également en toute transparence avec les Personas spatiaux et SharePlay, activant ainsi les jeux sociaux pour permettre aux utilisateurs de jouer ensemble. TabletopKit s’intègre aux frameworks familiers, tels que GroupActivities, RealityKit et SwiftUI, vous permettant de rapidement de rendre une expérience opérationnelle. C’est exactement ce que le développeur de « Checkmate Chronicles » a fait, créant une expérience de plateau de jeu captivante en utilisant ce nouveau framework ! visionOS 2 ne s’arrête pas là. Il y a des API Enterprise entièrement nouvelles qui fournissent l’accès à la lecture de codes-barres spatiaux, au streaming de caméra externe à faible latence, et plus encore. Cela permettra aux cas d’utilisation de flux de travail spécifiques de tirer parti de l’informatique spatiale. Nous avons effectué des mises à jour de l’entrée sur Vision Pro. Vous pouvez maintenant choisir si vous souhaitez que les mains de l’utilisateur apparaissent devant ou derrière le contenu, pour plus de créativité dans l’expérience de l’app. Nous avons considérablement déployé la fidélité de nos capacités de compréhension de scènes. Les plans peuvent maintenant être détectés dans toutes les orientations, et il est possible d’ancrer des objets sur les surfaces dans votre voisinage. Nous avons ajouté le concept de Room Anchors, qui prennent en compte l’environnement de l’utilisateur ou de l’utilisatrice pour chaque pièce. Vous pouvez même détecter ses mouvements d’une pièce à l’autre. Et nous avons une nouvelle API Object Tracking pour visionOS qui vous permet d’attacher du contenu sur des objets individuels situés autour de l’utilisateur ou de l’utilisatrice. Cette nouvelle fonctionnalité vous permet d’attacher du contenu virtuel, comme des instructions, à un objet physique, pour une interaction de nouvelle dimension. Nous avons aussi facilité l’apprentissage de l’informatique spatiale en fournissant plus d’exemples et de documentation pour la plateforme visionOS. L’avenir de l’informatique spatiale est excitant, et nous vous encourageons à y participer avec votre propre app visionOS. Passons maintenant la parole à Josh. Apple développe des produits qui réunissent matériel, logiciels et services pour offrir à nos utilisateurs des expériences véritablement somptueuses. Notre motivation constante est simple : nous voulons construire des plateformes de pointe et innovantes pour vous permettre de créer les meilleurs apps du monde. Nous voulons vous aider à créer des apps hautement intégrées qui ressemblent à des extensions naturelles de l’appareil de l’utilisateur, exploitant au maximum son matériel et ses logiciels. Et avec chaque version, nous améliorons nos plateformes en gardant cette motivation à l’esprit. Lorsque vous créez vos apps avec les SDK d’Apple, vous obtenez la performance la plus rapide possible. Vous utilisez les mêmes outils et frameworks que nous utilisons, avec des API qui ont été affinées et optimisées pour nos plateformes et nos produits. Ces mêmes API vous donnent un accès direct à l’intégration de toutes les fonctionnalités de la plateforme que les utilisateurs adorent, comme les commandes et les widgets interactifs, l’accessibilité et le type dynamique, et bien sûr, Apple Intelligence. L’intégration profonde dans la plateforme signifie que votre app est disponible dans plus d’endroits, de sorte que les utilisateurs peuvent l’utiliser à leur guise. Les SDK d’Apple facilitent aussi la création d’apps aux aspects familiers communs sur l’ensemble des plateformes. Cela est avantageux pour vos utilisateurs et utilisatrices, leur permettant de réutiliser les interactions qu’ils connaissent déjà sur d’autres apps. Les SDK partagent également de nombreux frameworks communs, de sorte que la plupart du code peut exprimer des comportements communs sur l’ensemble des appareils, tout en vous permettant d’adapter les résultats si besoin est. Et les SDK d’Apple vous donnent un outillage polyvalent, vous fournissant tout ce dont vous avez besoin pour créer vos apps. Vous pouvez utiliser Swift, SwiftUI et Xcode pour créer l’expérience souhaitée, quels que soient les appareils ciblés. Et ces avantages sont disponibles lorsque vous utilisez les SDK natifs d’Apple directement. Pour simplifier, les meilleures apps sont développées avec des SDK natifs. Nous sommes ravis de voir ces SDK à votre disposition et dans les mains de millions d’autres développeurs et développeuses, vous permettant de créer les meilleures apps possibles sur les plateformes les plus sophistiquées du monde. Redonnons la parole à Susan. Nous avons donc vu nos plus grandes annonces pour les équipes de développement. Apple Intelligence est le système d’intelligence personnel qui place de puissants modèles génératifs au cœur de votre iPhone, votre iPad ou votre Mac, avec de nouvelles fonctionnalités permettant de créer du language et des images dans les apps, avec des mises à jour majeures de Siri. Elle s’appuie sur le contexte personnel pour fournir une intelligence utile et pertinente. Elle intègre également la confidentialité dès le départ. Swift est déployé à Windows et Linux, et Swift Assist peut transformer vos idées en code pour vous permettre de vous concentrer sur des problèmes de niveau supérieur. visionOS 2 élève encore plus l’informatique spatiale avec une prise en charge améliorée pour les apps volumétriques, de nouvelles API Enterprise puissantes, et de nouvelles technologies qui facilitent la création d’apps et de jeux partagés. Et Game Porting Toolkit 2 permet d’apporter vos jeux les plus intensifs à Mac, iPad et iPhone. Explorez ces sujets et plus encore avec plus de 100 sessions en profondeur qui auront lieu tout au long de la semaine de la WWDC. Posez vos questions aux ingénieurs Apple et à d’autres experts Apple tout au long de la semaine dans les consultations et les labos en ligne, et dans les Apple Developer Forums, où vous pouvez également communiquer avec la communauté de développeurs ! Vous pouvez accéder à tout cela via l’app et le site Web Developer. Nous vous remercions de faire partie de la communauté de développement Apple, et nous sommes impatients de vous voir donner vie à ces technologies dans vos apps et vos jeux extraordinaires. Nous vous souhaitons une bonne semaine !

    Cet évènement a été filmé sur iPhone et édité sur Mac.

Developer Footer

  • Vidéos
  • WWDC24
  • Platforms State of the Union (ASL)
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • App Store
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Fonts
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Open Source
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Sample Code
    • Tutorials
    • Downloads
    • Forums
    • Videos
    Open Menu Close Menu
    • Support Articles
    • Contact Us
    • Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Get the Apple Developer app.
    Copyright © 2025 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines