2009-07-20 7 views
2

J'aimerais recevoir des commentaires de tous les développeurs chevronnés quant à la méthodologie qui serait la plus «correcte» ou «efficace» pour implémenter ma solution.Implémentation de développement iPhone: SQLite ou service Web

J'ai un fichier plat de 4,5 Mo qui compte environ 16 000 lignes avec 13 colonnes. Je sais que je peux importer ceci dans SQLite et créer mon modèle de données mais serait-il plus efficace d'utiliser ce fichier iPhone localement sur l'iPhone ou que l'application lise les données d'un service Web?

Merci.

Répondre

1

Si vous n'êtes pas allez mettre à jour les données (ou seulement le mettre à jour lorsque vous mettez à jour l'application) de la sqlitedb locale va plus simple et plus réactif. Il serait probablement encore mieux d'importer les données dans CoreData, de cette façon vous n'aurez pas besoin de manipuler directement sqlite ou de traiter des choses comme des API de lecture synchrones.

Si vous voulez être en mesure d'avoir le téléchargement de l'application de données mises à jour le choix, car beaucoup plus difficile, en fonction de la quantité de données, la fréquence des mises à jour, la taille des changements ont tendance à être, etc.

1

une base de données locale doit toujours être plus efficace en termes d'expérience utilisateur qu'un service Web

0

Je suppose que cela dépend un peu sur la quantité de données dont vous avez besoin à un moment donné. Si vos utilisateurs ont besoin de télécharger un grand nombre de données uniquement pour utiliser votre application, cela rendrait votre application potentiellement très lente et inutilisable sans connexion réseau.

À quelle fréquence devez-vous mettre à jour les données? Des mises à jour fréquentes favoriseraient une solution de service Web. Dans le cas contraire, vous devez mettre à jour votre application et la renvoyer chaque fois qu'un de vos fichiers est modifié. Une autre chose à penser: combien payez-vous pour le trafic Web pour votre site Web? Cela pourrait devenir assez coûteux si beaucoup d'utilisateurs ont constamment besoin de télécharger des données. Sauf si vous utilisez une sorte d'abonnement, vous ne recevez de l'argent qu'une seule fois, lorsque vous vendez l'application. Personnellement, je pencherais probablement pour mettre les données sur le téléphone et ne pas utiliser un service Web.

1

J'utiliserais les deux.

Une source distante permettant une banque de données dynamique et une banque de données locale avec mise en cache locale semblent être une valeur sûre.

Comme pour le service Web. À moins qu'il n'y ait une seule logique métier côté serveur, essayez peut-être une solution cloud. Quelque chose comme SimpleDB d'Amazon vient à l'esprit. Cela dépend bien sûr de la sta- ticité de vos données. Cela dépend de la nature de vos données. Comme tout le monde l'a déjà mentionné, si vous n'avez pas besoin de nombreuses mises à jour, la solution la plus efficace est un seul datastore local.

Vive

+0

Je voudrais aller avec celui-ci, rappelez-vous pas tout le monde dans tous les pays a des plans de données non plafonnés. Cela permettrait une fois seulement le téléchargement + mises à jour. Si un seul je choisirais le téléchargement du fichier sql db. 4 Mo est petit sur quelques Go d'espace. – Louis

Questions connexes