Séance de questions-réponses 3 Gestion de la mémoire iOS et pratiques recommandées

Dans la session de questions-réponses de cette semaine, Mark Hammonds répond aux questions laissées sur le message d'Axit Patel "Travailler avec la classe UITableView, Partie 2". Plus précisément, ce Q & A traite des techniques de gestion de la mémoire et de la possibilité de "libérer automatiquement" des objets. Mark parle également des meilleures pratiques lors de l’utilisation de viewDidLoad et d’autres astuces relatives à NSString..

Questions répondues:

Didacticiel: iPhone SDK: Utilisation de la classe UITableView - Partie 2

Question:
1) Afin de remplir le tableau d'images, vous créez deux vues UIImageViews, mais vous ne les publiez pas plus tard. Est-ce correct ou as-tu juste oublié de le faire??
2) Pourquoi créez-vous les tableaux factices de toute façon? Ne pourriez-vous pas simplement dire self.sitesArray = [[NSArray alloc] initWithObjects: @ "…",…, nil]; ?
Ou y a-t-il une raison de le faire comme vous l'avez fait?

De: Dan

Errata:

  • À 6:40 dans la vidéo, je déclare que l'utilisation de @ "Hello World!" retournera une chaîne libérée automatiquement. Ceci est une erreur. Il s'agit plutôt d'une chaîne allouée de manière statique qui est conservée tout au long du cycle de vie du programme, comme indiqué dans la section commentaires ci-dessous..
  • À 7h31 Je déclare que% @ est le spécificateur de format pour une chaîne NSString. Techniquement, c'est correct, mais il est important de noter que% @ est également utilisé pour imprimer des informations sur d'autres objets Cocoa-Touch. Un objet mis en forme avec% @ utilisera la méthode de l’instance -description, héritée de NSObject pour afficher une sortie personnalisée pour cet objet. NSString l'implémente pour afficher la valeur de chaîne, les autres objets se comportent de différentes manières.