|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 87 ![]() |
Bonjour à toutes et tous,
voici quelques temps que je me suis mis à l'apprentissage de l'AS3 en vu d'ado(be)pter Flex, Air, Flash et autres. Du point de vue du langage, pas de soucis particulier, ni du côté de l'Ide (Flash Builder). Mon gros soucis actuel vient des états (states) pour gérer les différents écrans. Jusque là et avec différents langages, que ce soit en mode bureautique ou en mode web, j'avais la notion de forms, de pages, de documents... Toutes mes applis ayant la même trame, le schéma général était (en faisant simple) : - une page principale avec N boutons (et d'autres choses bien entendu et sans intérêt ici), - bouton 1 appelle page 1, - bouton 2 appelle page 2, - bouton 3 appelle page 3, chaque page contenant son propre code. Or dans mon apprentissage de flex/as3, tous les exemples, tutos d'adobe ou autres, semblent se limiter à la notion d'état et imposer le modèle suivant, en reprenant l'exemple ci-dessus : - une seule page avec 4 états - état 1 = page principale - état 2 = page 1 - état 3 = page 2 - état 4 = page 3 avec tout le code dans cette seule page (bien entendu on peut faire référence à des classes, des composants...., mais toute la logique d'enchainement des écrans se trouve dans ce seul fichier). Ce qui me rappelle vaguement certaines sources en VB ou les développeurs trouvaient amusant de superposer des frames les unes sur les autres le tout sur une seule form, et où le debogage était une partie de plaisir sans nom. Sachant qu'il s'agit d'un schéma simpliste, une application de gestion normale comprenant au bas mot une vingtaine de formulaires, je ne parviens pas à me satisfaire de cette solution. Certain que vous avez de biens meilleures solutions à proposer, je suis tout ouïe, un très court projet flex illustrant simplement l'enchainement des écrans (2 écrans suffisent) serait idéal. Merci d'avance, ne serait ce que pour votre lecture. |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : août 2006 Messages : 140 ![]() |
Tu peux travailler avec des modules. Chaque page est un module avec son propre code.
Tu charges les modules dans un ModuleLoader. |
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 87 ![]() |
Bonjour,
c'est la 1ère piste que j'avais pressentis mais pas réussis à mettre en œuvre. Peut être par manque d'xp sous AS. J'attends de voir les différentes suggestions. Merci dans tous les cas. |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : janvier 2008 Messages : 249 ![]() |
Bonjour, personnellement je ne comprends pas ton étonnement ou bien ton insatisfaction sachant par exemple que la logique de navigation sous struts est mise dans un même fichier. Maintenant Flex se base sur des conteneur pour porter tes composants rien ne t'oblige à utilise le même conteneur pour afficher tes formulaires
NB : j'espère que j'ai bien compris ton besoin Bon courage Samy
__________________
http://www.m-ataf.com (En cours de construction) |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
Bonjour,
tout dépend je dirais de la taille de ta future application. Pour une petite application, l'usage unique d'états peut être envisagé. Pour une application de taille moyenne, l'usage d'un viewstack ("pile de vues") peut être envisagé. Cette solution se rapproche le plus de ta stratégie actuelle. Enfin pour les grosses applis (portails...) l'usage de modules comme l'a dis vilveq est fortement conseillé. Avantages : -states : facile à mettre en oeuvre et pouvant être facilement "embellis" visuellement par les transitions par exemple -viewstack : permet de charger les éléments de la pile immédiatement (au lancement de l'appli) ou bien à la demande de la vue par l'utilisateur. -modules : les modules peuvent être chargés ou déchargés à volonté ce qui induit donc un gain significatif en terme de gain de mémoire et de chargement de l'appli. Cependant, rien ne t’empêche de mixer ces approches. Ex: un écran proposant un formulaire. Ce formulaire propose 3 vues (créer un compte, connexion et récupération de password) représentant les vues d'un viewstack. Chaque vue propose plusieurs états possibles (ex: création d'un compte de type user ou bien modérateur [désolé pour l'exemple bidon]). Une fois connecté et authentifié, tu es basculé vers l'espace perso lié à ton compte. Le formulaire et la gestion de ton espace perso peuvent être représentés par 2 modules distincts encapsulés dans la coquille (shell) réprésenté par ton appli (au sens conteneur). Intérêt : ne pas faire fuir un potentiel utilisateur de l'appli si elle se charge trop lentement (ie: si le formulaire et l'espace perso se charge en même temps). Avec l'utilisation de modules, seul le formulaire est chargé au préalable puis si la connexion est réussie, le module formulaire est viré de la mémoire et le module espace perso est chargé. En espérant pas t'avoir trop embrouillé...
__________________
Je ne réponds pas aux questions envoyées par mp |
|
|
10
|
|
|
#6 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 87 ![]() |
Bonjour,
pas d'embrouille Madfrix, et je n'oublie pas les autres, ces pistes rejoignent des infos glanées ici ou là mais dont je n'étais pas certain de la finalité ou de la compatibilité avec mes recherches. Même si mon xp sous AS ne me permet pas encore de matérialiser ces pistes, dans tous les cas, cela me donne le fil à suivre et nul doute que la toile sera de nouveau ma meilleure amie. D'ailleurs si je me fie aux divers articles du Web, le viewstack semble la piste la + sérieuse et la + adaptée à ma demande. Je reste preneur d'autres pistes, à défaut je fermerais ce topic et creuserais dans ce sens. D'ores et déjà merci. |
|
|
00
|
|
|
#7 | ||||
|
Membre régulier
![]() Inscription : août 2006 Messages : 140 ![]() |
Si tu veux un exemple d'utilisation de module, voici des bouts de code :
L'application principale : Code :
Code :
Et un répertoire (package) /modules dans lequel tu mets tes modules que tu appelles Formulaire1, Formulaire2, etc... voilà, en gros . Si tu as d'autres questions, n'hésite pas. |
||||
|
|
10
|
|
|
#8 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 87 ![]() |
Bonjour,
et merci à toi vilveq, un bon exemple en pratique comme je les aime. Les choses commencent à prendre forme, ne me reste plus qu'à appliquer. J'en profite pour vous faire part d'un autre article trouvé sur le sujet avec la version 4.5 de flex : http://www.flex-tutorial.fr/2010/11/...approche-hero/ Merci à tous. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com