[Débutant] Application Core Data

DidzDidz Membre
18:44 modifié dans API AppKit #1
Bonjour à  tous,

Je voudrais me lancer dans la programmation sur Mac. J'ai lu les différents tutoriaux que j'ai trouvé ici, chez Apple ou encore sur CocoaDevCentral, mais je pédale vraiment dans la semoule pour débuter mon application. Il y a trop d'informations et je ne trouve pas exactement un bon exemple qui m'expliquerait la marche à  suivre.

Je précise que je suis sous Leopard avec Xcode 3.0 et que je compte développer en Objective-C 2.0 (nouvelle syntaxe) car je n'ai pas besoin de compatibilité avec les versions antérieures ...

Je cherche à  développer une application Core-Data Document-based dans laquelle, grossomodo, on ajouterait des fichiers par glisser-déposer, puis on éditerait certaines informations spécifiques (qui correspondent au modèle que j'ai créé dans Xcode). En gros une application qui fonctionne comme iTunes, mais qui gère d'autres types de fichiers que des fichiers musicaux.

Ma première difficulté est que tous les tutoriaux que j'ai trouvé utilisent tous des exemples avec des données que l'on ajoute manuellement via un bouton "ajouter" (par exemple des entrées d'un blog, ou des employés dans une application de gestion des employés). Je n'ai pas trouvé de moyen d'ajouter des fichiers par glisser/déposer ou par un menu "Fichier->Ajouter à  la bibliothèque" comme dans iTunes.

Ma deuxième difficulté c'est que les fichiers ainsi ajoutés doivent être gérés, tout comme dans iTunes, via l'application : ils doivent être copiés dans un dossier spécifiques et maintenu organisé par l'application. Or je ne sais pas du tout si Core Data permet de faire cela ou si c'est le boulot d'un autre framework.

La troisième difficulté, c'est que je recherche à  recréer une interface comme iTunes (affichage des sources à  gauche, tableau des éléments à  droite). Or dans interface builder je n'ai trouvé aucun élément qui ressemble à  la source de iTunes/Mails/Finder (avec par exemple les catégories "Liste de lectures intelligentes", etc. écrites en majuscule). J'imagine qu'il faut utiliser quelque chose d'autre et le modifier via du code ... De même pour la partie de droite. Je ne sais pas laquelle choisir entre NSScrollView (dans la catégories Data View), Core Data Entity (dans la catégorie Core Data).

Bref, je suis dans le flou total et je suis tout simplement incapable de commencer à  développer car je suis bloqué sur des aspects aussi simples. Si quelqu'un connaà®t un bon exemple à  suivre d'application similaire, ou a de bons conseils à  me donner, qu'il me fasse signe ! ;-)

Réponses

  • Philippe49Philippe49 Membre
    novembre 2007 modifié #2
    Bonjour Didz, et bienvenu sur OC :p

    Je te conseillerais de décomposer ton appli en petits projets intermédiaires dont tu assures la maitrà®se.
    • Un premier pour faire fonctionner des vues sous Scroller, sous SplitView, ...
    • Un deuxième par exemple pour faire fonctionner NSFileManager.
    • Un troisième pour le drag&drop.
    • ...


    Au fur et à  mesure tu stockes les principes, et tu les réunis en fin de course dans ton projet.

    Je pense que les facilités de CoreData risquent d'être un frein au fur et à  mesure que tu avances ... mais je n'ai pas beaucoup approfondi ce modèle.

    Longue vie sur OC
  • DidzDidz Membre
    18:44 modifié #3
    Merci pour cette réponse !

    Je pense que je vais effectivement y aller pas à  pas en créant différents petits projets séparés puis en intégrant le tout par la suite. J'espère juste que le tout va finir par me sembler moins flou au fur et à  mesure ;-)
  • tabliertablier Membre
    18:44 modifié #4
    Je ne connais pas vraiment core-data.
    Pour le glisser-déposer il y a un exemple dans le tutoriel Cacao. Ce que tu récupères c'est un Array des noms des fichiers qui ont été glissés. Après, la manière dont tu traites ce ou ces fichiers dépend de ce que tu veux faire.
    Pour ma part, lorsque j'envisage une appli, je sépare toujours l'aspect Interface utilisateur de l'aspect fonctionnalité de l'appli.
    C'est une technique fondamentale en sciences, lorsque l'on arrive pas à  résoudre un problème on le découpe en problémes plus petits. Dans ce sens, le conseil de phiippe49 est très bon.
    Bienvenu sur OC, j'espère que tu aimes le chocolat.  :P
Connectez-vous ou Inscrivez-vous pour répondre.