¿Qué código es preferible para ordenar automáticamente NSTableView?

Esta es una aplicación CoreData / SQLite. Tengo 2 formas de ordenar automáticamente los datos de una determinada manera, al iniciar la aplicación. Ambos funcionan como se esperaba, pero me gustaría preguntarle qué método debería preferirse y por qué.

Este es el código que hice después de leer el documento de Apple:

[myTableView setSortDescriptors:[NSArray arrayWithObjects:[NSSortDescriptor sortDescriptorWithKey:@"entity_attribute" ascending:YES selector:@selector(compare:)], nil]];

Este es el código de otra persona que encontré en la web:

NSSortDescriptor *myDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"entity_attribute" ascending:YES selector:@selector(compare:)] autorelease];
NSArray *sortedArray = [NSArray arrayWithObject:myDescriptor];
[myController setSortDescriptors:sortedArray];

Gracias por su consejo.

preguntado el 27 de agosto de 11 a las 19:08

1 Respuestas

Las dos muestras que enumera están haciendo exactamente lo mismo (y exactamente de la misma manera).

Parece una preferencia. Quizás el código que vio en línea, el autor pensó que era más legible dividirlo en tres líneas que tenerlo todo en una sola línea.

Respondido 27 ago 11, 23:08

Estaba preguntando porque me pareció que en el primer método, estoy "hablando" (setSortDescriptors) con la vista, mientras que en el segundo estoy hablando con el controlador. - usuario886832

NSFetchRequest es la única clase que conozco que consume ese mensaje. Si alguien (usted / el otro chico) está haciendo algún tipo de método de "traspaso", yo personalmente sugeriría mantenerlo en un controlador, ya que eso no parece ser una preocupación para la vista. Pero esa es una decisión de diseño y depende de su situación / contexto. - Steve

Veo que eres nuevo aquí. Si mi respuesta le ayudó, si pudiera hacer clic en la marca de verificación debajo de las flechas de votación para marcar mi respuesta como "aceptada", se lo agradecería. - Steve

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.