Question sur le moyen optimal d'organiser les données d'une application iPhone à livres

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

  •  23-09-2019
  •  | 
  •  

Question

Je voudrais commencer à travailler sur une application iPhone qui ne fait pas plus que d'afficher un contenu de livres pour la lecture. Le contenu du livre est disponible en ligne et est entièrement open source, mais je voudrais rendre le contenu disponible localement. Avec des applications sur lesquelles j'ai travaillé précédemment, à savoir avec iPhone OS 2.x, créant (ou trouvant) une base de données .sql, puis la simple mise en place de données sur les données à partir de l'application a très bien fonctionné. Avec l'avènement des données de base (ce que je ne connais pas), l'ancienne méthode SQL peut ne pas être idéale. Ma question est donc: quelle est la meilleure façon pour moi de passer du contenu Web en ligne au contenu lisible par iPhone stocké localement? Quelle que soit l'approche que je prends, je vais avoir besoin d'une base de données (non?), Dois-je donc en sortir le poids et commencer par importer le contenu Web dans une base de données avec toutes les tables et colonnes correctes? Je suppose qu'avec cette question, je cherche juste un point dans la bonne direction. S'il y avait des suggestions sur la meilleure méthode pour moi de rouler à ce sujet, ce serait grandement apprécié. Merci!

Était-ce utile?

La solution

Les données de base sont bonnes si vous avez des "objets" que vous souhaitez faire persister. Dans le cas d'avoir juste beaucoup de données à lire / écrire, un vieux sqlite peut être plus simple.

Désolé de ne pas donner de conseils plus spécifiques, mais cela revient à la complexité du modèle de données et des modèles d'objets de votre application. Je recommanderais de regarder les données de base, mais ne l'utilisez pas simplement parce que tout le monde vous dit à quel point c'est cool.

Si vous optez pour les données de base, vous ne définissez pas votre propre schéma de base de données SQL, alors ne commencez pas sur ce chemin avant d'avoir pris la décision.

Autres conseils

J'irais en fait avec la route de données de base. Les données de base sont juste une API fournie par Apple pour gérer les données persistantes, peu importe le backend de données (si c'est un fichier PLIST plat, un fichier XML ou un fichier de base de données SQLite complet).

Dans le cas d'un livre, vous pouvez décomposer les entités comme suit.

Entité de livre

  • Titre qui est un attribut de chaîne
  • Auteur qui est un attribut de chaîne
  • Chapitres qui est une relation entre les entités de chapitre

Entité de chapitre

  • Titre qui est un attribut de chaîne
  • pages qui est a a de nombreuses relations d'entités de page

Entité de page

  • PageText qui est un attribut de chaîne

Ensuite, vous pouvez accéder à toutes les valeurs comme s'ils sont des objets utilisant des données de base sans avoir à vous soucier du code backend SQL et à écrire tout le code pour traduire les données SQLite sur des objets Cocoa que vos contrôleurs de vue peuvent afficher.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top