21

I dati principali forniscono il metodo "executeFetchRequest" nella classe NSManagedObjectContext, che è possibile utilizzare per recuperare i dati dalle tabelle e utilizzarli in qualsiasi modo.Perché utilizzare NSFetchedResultsController?

Ora c'è un altro modo utilizzando NSFetchedResultsController e fornendolo a UITableView per il recupero e i dati dalle tabelle.

Le mie domande sono ora:

  • Da che parte è più veloce ?, voglio dire le prestazioni saggio, qual è il migliore?

  • NSFetchedResultsController viene utilizzato solo con UITableViews?

  • Quali sono i pro e i contro del NSFetchedResultsController.

  • E l'ultima cosa, "Perché usiamo NSFetchedResultsController", che cosa lo rende migliore di qualsiasi altro modo.

risposta

40

E ultima cosa, "Perché usiamo NSFetchedResultsController", ciò che cosa rende meglio di qualsiasi altro modo.

La classe FRC è progettata per gestire automaticamente tutto il sovraccarico associato alla fornitura di dati complessi e dinamici per le tabelle.

Se tutto ciò che hai è una semplice tabella di una sezione i cui dati non cambiano mai, allora un FRC non ti dà alcun vantaggio. Devi solo fare un tentativo e hai finito. Tuttavia, se i dati vengono modificati nell'interfaccia utente (riorganizzazione, eliminazione o aggiunta dell'utente) o tramite codice (ad esempio, i dati vengono aggiornati da un server), la FRC fornisce i meccanismi per gestire tutte le modifiche costanti e assicurarsi che la tabella rifletta accuratamente quei cambiamenti.

Da che parte è più veloce ?, voglio dire prestazioni saggio, quale è il migliore?

Non c'è alcuna differenza di prestazioni importanti nell'utilizzo di un recupero o FRC poiché entrambi utilizzano lo stesso meccanismo di recupero per ottenere i dati dall'archivio permanente. Se si dispone di dati dinamici complessi, è più rapido utilizzare la FRC piuttosto che duplicarne la funzionalità manualmente.

Quali sono i pro e i contro del NSFetchedResultsController.

Vedere sopra.

NSFetchedResultsController è solo utilizzato con UITableViews?

Sì, è davvero utile solo con le tabelle.

+0

Ha perfettamente senso, tutto l'overhead aggiuntivo è già stato curato. Come nel mio caso, i record sono frequentemente aggiornati da un server.Quindi in qualsiasi momento l'interfaccia utente può essere aggiornata, in precedenza stavo utilizzando la richiesta di recupero e per aggiornare l'interfaccia utente stavo usando NSNotifications, ma FRC sta dando così facilità ora, le modifiche si riflettono automaticamente in Table View. – Ansari

+0

Quindi, grazie mille .... :) – Ansari

+0

Semplice e buona risposta, si può facilmente capire. –

Problemi correlati