Sesión de preguntas y respuestas 3 Administración de memoria de iOS y mejores prácticas

En la sesión de preguntas y respuestas de esta semana, Mark Hammonds responde a las preguntas que quedaron en la publicación de Axit Patel "Trabajando con la clase UITableView, parte 2". Específicamente, estas preguntas y respuestas analizan las técnicas de administración de memoria y la capacidad de "autorelease" objetos. Mark también habla sobre las mejores prácticas al usar viewDidLoad y otros consejos relacionados con NSString.

Preguntas respondidas:

Tutorial: iPhone SDK: Trabajar con la clase UITableView - Parte 2

Pregunta:
1) Para completar la colección images, crea un par de UIImageViews, pero no las liberas más tarde. ¿Está bien o simplemente te olvidaste de hacerlo??
2) ¿Por qué creas las matrices ficticias de todos modos? ¿No podrías simplemente decir self.sitesArray = [[NSArray alloc] initWithObjects: @ "...", ..., nil]; ?
¿O hay una razón para hacerlo como lo hiciste??

Desde: Dan

Errata

  • A 6:40 en el video declaro que usando @ "Hello World!" devolverá una cadena de auto-lanzamiento. Esto es incorrecto. En cambio, es una cadena asignada estáticamente que se mantiene durante todo el ciclo de vida del programa, como se señala en la sección de comentarios a continuación..
  • A 7:31 Declaro que% @ es el especificador de formato para una NSString. Técnicamente, esto es correcto, pero es importante tener en cuenta que% @ también se usa para imprimir información en otros objetos Cocoa-Touch también. Un objeto formateado con% @ usará el método de instancia de -descripción originalmente heredado de NSObject para mostrar resultados personalizados para ese objeto. NSString implementa esto para mostrar el valor de la cadena, otros objetos se comportan de diferentes maneras.