Qualcuno ha provato una qualsiasi delle API involucro SQLite3 per funzionalità di database più facile su iPhone?

StackOverflow https://stackoverflow.com/questions/867482

Domanda

Per chi proviene da uno sfondo non-SQL, ho avuto un momento difficile assorbire SQLite3 negli ultimi giorni. Qualcuno ha avuto buoni risultati utilizzando le API di involucro SQLite3 là fuori? Funzionano in modo affidabile? Che è meglio? Sono anche sentito buzz su Core Data proveniente per l'iPhone. Non è sicuro se tale informazione è affidabile o no, ma forse alcuni di voi sanno: ci sarà un di dati principale per l'iPhone ad un certo punto?

È stato utile?

Soluzione

Se si sta appena iniziando ora, vorrei utilizzare Core Data.

Ho trascorso qualche tempo l'anno scorso guardando i vari involucri, al momento. Non ho usato nessuno di loro alla fine.

Credo che la NDA era ancora al suo posto, quando stavo cercando così forse ho perso quelle migliori, ma ho scoperto che la maggior parte erano molto sottili involucri. Per i miei scopi questo significava che ha aggiunto una dipendenza esterna, non ha salvato molto digitazione e mi sarebbe probabilmente ancora dovuto tuffarsi verso il basso per l'uso della funzione SQLite chiamate a volte comunque. Non sembrava vale la pena.

Altri suggerimenti

FMDB è facile da usare e astrae alcuni dei cattiveria SQLite lontano da voi, ma espone ancora lo SQL.

L'ho usato in un progetto, ma sottoclasse per aggiungere il mio strato parzialmente OO. Il vantaggio di questo approccio è che se ho bisogno di più velocità o qualcosa non avevo previsto (trigger per esempio), io posso farlo accadere. Con Core Data, non c'è un "bypass" a disposizione e devo fare affidamento su ottimizzazioni di Core Data, l'utilizzo della memoria, ecc.

Un'altra differenza è il Data Nucleo permetterà la vostra applicazione di rimanere completamente OO. Con FMDB o altra soluzione di database, si è sempre strettamente legato alla organizzazione del database. Si tratta di una decisione di progettazione, e non quello che si può cambiare in seguito.

Perché non indirizzare CoreData utilizzando l'SDK 3.0?

Se per qualche motivo è necessario supportare 2.x, si dovrebbe guardare a SQLitePersistentObject . E 'lento e ha qualche bug, ma è molto facile da usare. Purtroppo non è più in fase di sviluppo attivo dall'autore.

Inoltre: Qualche tempo fa, con un progetto piccolo campione (2.x) io ho usato FMDB . Per quanto mi ricordo che era abbastanza facile da usare. Tuttavia, è necessaria la conoscenza di SQL.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top