9

Dovrei aver paura dell'uso di Key-Value Observations (KVO) e NSNotifications? Sto iniziando a usarli nella mia app, ma sono un po 'poco familiare con il concetto di qualcosa che potrebbe innescare una chiamata su tutto il sito o fare automaticamente cose, e un po' paura del colpo di performance che tale overhead potrebbe portare.Velocità di prestazione di KVO e NSNotifiche?

Le mie preoccupazioni sono infondate? Dovrei usarli come qualsiasi altra chiamata di metodo? Sembrano molto convenienti e riempiono un sacco di spazi vuoti, quindi mi piacerebbe usarli se possibile. Nota: sto programmando principalmente per dispositivi iOS, quindi le prestazioni sono sempre una preoccupazione per me.

risposta

20

Entrambi gli osservatori di valori-chiave e NSNotifications sono piuttosto leggeri e andavano bene su macchine desktop che avevano meno energia di un iPad. Detto questo, domande sulle prestazioni del "dovrei?" il tipo può essere risolto solo con la profilazione. Penso che troverete che la maggior parte della gente consiglierebbe, abscent qualsiasi requisito di prestazioni specifiche che richiedono un design up-front, si scrive l'app nel modo che ha più senso dal punto di vista architettonico ed è più efficiente per lo sviluppo. Quindi profilo, profilo, profilo. Se rilevi che KVO o le notifiche richiedono una quantità significativa di tempo delle tue app (dubito che sia così), prendi in considerazione soluzioni più performanti (anche se non ce ne sono molte).

+0

Grazie per la risposta rapida. Immagino di essere solo un po 'paranoico. Tendo a fare un sacco di profilazione sulle mie app, probabilmente troppo per il mio bene. –