Vidéo: Une Introduction à React pour Débutants - Tutoriel français 2018 2025
Une liste de propriétés (ou plist ) est parfaite pour stocker de petites quantités de données dans votre application iOS, composées principalement de chaînes et de chiffres. Ce qui ajoute à son attrait, c'est la possibilité de le lire facilement dans votre programme, d'utiliser les données et de modifier les données, puis de réécrire la liste de propriétés. En effet, iOS fournit un petit ensemble d'objets ayant ce comportement intégré.
Les applications et autres logiciels système sous OS X et iOS utilisent largement les listes de propriétés. Par exemple, le Finder OS X stocke les attributs de fichier et de répertoire dans une liste de propriétés, et iOS les utilise pour les valeurs par défaut de l'utilisateur. Vous obtenez également un éditeur de liste de propriétés avec Xcode, qui facilite la création et la gestion de fichiers de liste de propriétés dans vos propres programmes.
Une fois que vous avez compris comment travailler avec les listes de propriétés, c'est en fait facile, mais comme la plupart des choses, y arriver est la moitié du plaisir.
Les listes de propriétés contiennent des objets sérialisables . Un objet sérialisable peut se convertir lui-même en un flux de bits afin de pouvoir être stocké dans un fichier; il peut alors se reconstituer en l'objet qu'il était autrefois quand il est relu.
Ces objets, appelés objets liste de propriétés, avec lesquels vous devez travailler sont les suivants, et vous trouvez deux types:
Classes de base:
-
NSData et NSMutableData
-
NSDate
-
NSNumber
-
NSString et NSMutableString
Conteneurs :
-
NSArray et NSMutableArray
-
NSDictionary et NSMutableDictionary
Parfois, le plist d'une application est en fait un NSDictionary nommé Root (ceci est vrai pour toutes les propriétés à moins que vous ne le changiez). Root a une entrée - DestinationData, qui est un tableau de dictionnaires - et les données pour chacune des destinations sont conservées dans un dictionnaire de ce tableau (Item 0 et Item 1).
Maintenant, pour cette explication de deux types d'objets de liste de propriétés:
-
Classes de base: Le terme classes de base décrit le type d'objet le plus simple. Ils sont ce qu'ils sont.
-
Conteneurs: Les conteneurs peuvent contenir des primitives ainsi que d'autres conteneurs.
Une caractéristique importante des conteneurs d'objets de liste de propriétés (tels que NSArray et NSDictionary), outre leur capacité à contenir d'autres objets, est qu'ils ont une méthode writeToFile: qui écrit l'objet dans un fichier et un initWithContentsOfFile:, qui initialise l'objet avec le contenu d'un fichier.
Donc, si vous créez un tableau ou un dictionnaire et que vous le remplissez d'objets du type de liste de propriétés, tout ce que vous avez à faire pour sauvegarder ce tableau ou dictionnaire dans un fichier, c'est de le sauvegarder lui-même. tableau ou un dictionnaire, puis dites-lui de s'initialiser à partir d'un fichier.
Les primitives NSString et NSData et leurs homologues mutables peuvent également écrire et lire eux-mêmes vers et à partir d'un fichier.
NSData et NSMutableData sont des wrappers (un wrapper est un objet dont le but principal est de transformer quelque chose en un objet) dans lequel vous pouvez vider n'importe quel type de données numériques et faire agir ces données comme un objet.
Les conteneurs peuvent contenir d'autres conteneurs ainsi que les types primitifs. Ainsi, vous pourriez avoir un tableau de dictionnaires, et chaque dictionnaire pourrait contenir d'autres tableaux et dictionnaires ainsi que les types primitifs.
