Index de SwiftData Note

Index de SwiftData

SwiftData, introduit dans iOS 17, manquait initialement de capacités d'indexation de base de données. iOS 18 a corrigé cette omission, permettant aux index de récupération d'améliorer les recherches dans la base de données. Core Data prend en charge depuis longtemps l'ajout d'index de récupération, ce qui accélère les recherches dans la base de données en fonction de propriétés spécifiques. Dans l'éditeur de modèle Core Data d'Xcode, vous pouvez ajouter des index de récupération en sélectionnant l'entité et en utilisant l'option "Ajouter un index de récupération". Cependant, malgré l'introduction de la prise en charge des index de récupération dans SwiftData par iOS 18, Xcode 16 affiche toujours un avertissement indiquant que les index de récupération ne sont pas pris en charge. Pour ajouter des index de récupération SwiftData, utilisez la macro #Index pour spécifier le chemin de clé de chaque index. Vous ne pouvez utiliser la macro #Index qu'une seule fois pour chaque classe de modèle, donc tous les index doivent être répertoriés dans la seule macro. Des index composés, utiles pour le tri des éléments avec des propriétés dupliquées, peuvent également être ajoutés. Pour plus d'informations, reportez-vous à la documentation WWDC24 sur « Nouveautés de SwiftData ».