Archives et Serialisations
Paisible.fr
Membre
Bonjour,
Pour mon 101 message, je suis un peu à la peine en ce qui concerne l'archivage et la sérialisation de mes objets.
Aussi je cherche un bon tuto en français pour bien assimiler les principe de base avant de me replonger dans le "mac os programming" (j'ai lu chapitre en question, mais je sais pas si c'était à cause de l'heure tardive, j'ai pas assimilé ni compris grand chose)
Pour mon 101 message, je suis un peu à la peine en ce qui concerne l'archivage et la sérialisation de mes objets.
Aussi je cherche un bon tuto en français pour bien assimiler les principe de base avant de me replonger dans le "mac os programming" (j'ai lu chapitre en question, mais je sais pas si c'était à cause de l'heure tardive, j'ai pas assimilé ni compris grand chose)
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Le principe général c'est que pour stocker des objets sur le disque, il faut les transformer en entités de base (qui sont NSString, NSNumber, NSDate, NSData). La sérialisation appelle encodeWithCoder: pour encoder et initWithCoder: pour initialiser un objet à partir d'une archive. A l'intérieur de ces méthodes, il faut coder et décoder soi même.
Les objets conformes au NSCoding protocol implémentent déjà ces méthodes donc pas besoin de les implémenter.
Le déarchivage elle-même a lieu dans deux cas au moins: soit quand on charge un objet depuis un nib, soit quand on demande explicitement à NSUnarchiver de désarchiver avec unarchiveObjectFromFile|Data:. Il y a peut être d'autre cas mais je ne les ai pas en tête.
Là où je trouve qu'il manque de la doc, c'est surtout sur le désarchivage asynchrone avec les méthodes delegate de NSUnarchiver. C'est surement très utile mais je n'ai jamais vu de cas pratique où ça pourrait s'appliquer.
J'ai relu à tête reposée le Hillegass et la doc Apple.
Puis je suis passé au TPs sur un projet de tests. ça va beaucoup mieux maintenant
C'est assez sympa à utiliser d'ailleurs.