Conception et gestion de vues

AdamAdam Membre
02:15 modifié dans Vos applications #1
Bonjour,

Excusez moi de vous solliciter à  nouveau, mais j'ai un gros doute sur la conception de mon programme.
Je m'explique :
Je veux faire un programme dont la 1ère page amène sur une carte avec des annotations.
Puis lorsque l'on clique sur une annotation, j'ai une nouvelle page avec 2 choix (informations ou itinéraires).
Si je clique sur informations, cela ouvre un navigateur avec un page web.
Si je clique sur itinéraire, ça m'envoi sur Plans.

Au niveau du code tout fonctionne bien, mais l'arrangement de mon programme me parait bizarre.
J'ai une classe mesAnnotations qui permettent l'initialisation de mes annotations.
J'ai une classe AppDelegate qui me renvoi vers mon RootViewController (jusque la rien de très exceptionnelle).

Dans mon RootViewController, j'initialise et affiche la carte, et crée les annotations. (la j'ai un doute par rapport a mes annotations que je crée dans mon viewdidLoad, je trouve que cela fait un peu bazare).
Est-ce que créer mes annotations dans un fichier xml, et tout importer serait plus judicieux ?ou ça ne changera rien au final sur l'iphone ?

Ensuite, lorsque que l'on clique sur le bouton de l'annotation, RootViewController me renvoi vers SecondViewController (avec un protocol).
Dans secondViewController, j'affiche les 2 possibilités (info ou itinéraire). Pour itinéraire pas de problème, j'utilise un openURL..
Mais pour les informations, je charge un contenu web depuis internet, et je fait un [self.view addsubview monContenu];
Ensuite j'ai crée une toolbar avec un bouton "retour" pour mon navigateur. Et la je n'arrive pas à  instancier correctement le selecteur de mon bouton "retour".
Peut-être devrai-je créer un nouveau ViewController pour mon navigateur internet, ou c'est une perte de temps ?


Et depuis, je remet tout l'arrangement de mon programme en question. Je sais pas si mon programme fait au "feeling" est bien vue dans sa conception.
C'est mon premier vrai programme, et j'espère ne pas trop avoir fait d'erreur.

Merci pour vos réponses..

Réponses

  • zoczoc Membre
    02:15 modifié #2
    Je vais poser une question simple ? L'application fonctionne-t-elle comme prévu au départ ? Si la réponse est oui, alors pas la peine de retourner à  la phase de conception...


    ... Parce qu'en pratique, on peut toujours améliorer la conception, la conception parfaite n'existe pas. Le but c'est quand même d'avoir une application fonctionnelle, pas de "concevoir pour concevoir".


    Il sera toujours temps d'améliorer pour les prochaines versions de l'application. Mais encore une fois, il n'y a pas qu'une seule vérité en conception.

  • AdamAdam Membre
    02:15 modifié #3
    Oui elle fonctionne.
    Mais depuis que j'ai essayé de créer et d'enlever le navigateur internet (avec un RemoveFromSuperView), si je vais sur mon navigateur et que je le quitte, quelque temps après j'ai un EXC_BAD_ACCESS.

    Ce qui est bizarre, c'est que le problème apparait que quand je retourne a ma première vue :
    Vue1->Vue2->NavInternet->Vue2 Cela fonctionne
    Vue1->Vue2->Vue1 Cela fonctionne

    Mais si je fait :
    Vue1->Vue2->NavInternet->Vue2->Vue1 J'ai un EXC_BAD_ACCESS

    Je pense que c'est un problème avec la mémoire, mais je trouve pas (vu que le navigateur fonctionne "partiellement").
    C'est pour ça que je me suis dit, que c'est peut être le programme qui est très mal conçu ?
    D'ailleurs, est-ce qu'un programme conçu comme le mien pourrait avoir quelques ralentissement au final sur l'iphone ? (ou cela change presque rien)
Connectez-vous ou Inscrivez-vous pour répondre.