Précédent   Forum du club des développeurs et IT Pro > Webmasters - Développement Web > Flash/Flex
Flash/Flex Forum d'entraide sur les technologies Flash et Flex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 07/03/2012, 11h02   #1
FlexBeginner
Candidat au titre de Membre du Club
 
Homme
dvt outils gestion liés à mon métier de base
Inscription : juillet 2010
Messages : 15
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : dvt outils gestion liés à mon métier de base
Secteur : Industrie

Informations forums :
Inscription : juillet 2010
Messages : 15
Points : 10
Points : 10
Par défaut FLEX 4.5 - Utilité d'une interface IMachin

Bonjour,
je lis avec beaucoup d'intérêt des articles sur AS3 et autres langages de dev,
mais j'ai du mal à comprendre l'intérêt d'une interface qui déclare uniquement des méthodes.
L'un des lecteurs aurait-il la gentillesse de me dire simplement où est le plus
de déclarer des méthodes ds un fichier et de les implémenter dans un autres; et en quoi ça va simplifier la lisibilité et la maintenance de mon code.

La doc Adobe me laisse perplexe; peut-être parce que mon projet n'est pas très bien construit ou bien parce que ces techniques ne sont pas appropriées à mon niveau ou encore qu'elles sont sans objet dans mon projet qui n'est pas assez abstrait ( Flex + AMFPHP + MYSQL).
J'ai lu quelques articles sur PureMVc dont le fascicule et l'exemple CaféTownsend, je trouve ça lourd pour remplir juste un formulaire.

Avec mes remerciements,
FlexBeginner est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2012, 10h25   #2
The_Pretender
Rédacteur

 
Avatar de The_Pretender
 
Homme Matthieu DELOISON
Formateur ActionScript Flash
Inscription : juin 2004
Messages : 650
Détails du profil
Informations personnelles :
Nom : Homme Matthieu DELOISON
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Formateur ActionScript Flash
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : juin 2004
Messages : 650
Points : 3 678
Points : 3 678
Bonjour,

L'intérêt d'utiliser une architecture basée sur PureMVC ou équivalent (pattern model view controler) est de séparer les différentes fonctionnalités d'une application.

Par exemple : il y a les vues qui s'occupe uniquement de l'affichage d’informations pour l'utilisateur.
Un ou plusieurs modèles pour le traitement des données, la récupération (via amfphp), les calculs...)
Le controler qui synchronise tout cela en envoyant des évènements aux vues pour qu'elles se mettent à jour, informant le modèle des intéractions de l'utilisateurs.

Sur des applications complexes, cette architecture est justifiée.

L'application est ainsi beaucoup plus facile à maintenir.

Il devient très facile de rajouter des fonctionnalités, par exemple une nouvelle interface (via une nouvelle vue), un nouveau élément à prendre en compte dans les calculs (via une modification du modèle et l'ajout d'évènements).

En fait ton application organise le code par thème (les calculs, gestion des graphismes, les demandes d'informations).
Tout est classé, ce qui fait qu'il est facile de revenir sur l'application plusieurs semaines après.

Pour s'en rendre compte, il suffit de se lancer et commencer à créer des applications en utilisant les modèles de conception (MVC, Observer...).
__________________
Découvrez : Tutoriels, ressources AS2 et AS3
La Méthode AS3 Facile pour développer des applications et jeux Flash en ActionScript 3 : ActionScript-Facile.com
The_Pretender est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2012, 12h46   #3
FlexBeginner
Candidat au titre de Membre du Club
 
Homme
dvt outils gestion liés à mon métier de base
Inscription : juillet 2010
Messages : 15
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : dvt outils gestion liés à mon métier de base
Secteur : Industrie

Informations forums :
Inscription : juillet 2010
Messages : 15
Points : 10
Points : 10
Bonjour,
merci pour la réponse généraliste.
Effectivement, il vaudrait mieux que je me lance dans un tout petit projet MVC pour comprendre certaines choses.

bon, entre-temps et fortuitement, je suis tombé sur un article de M. Anthony Chauviré (recherche google sur le ombre de singletons autorisés/pertinents ds une app. Flex mais pas de réponses là-dessus...).
J'ai bien compris le principe de l'interface permettant d'ajouter/ partager des méthodes entre des classes n'ayant rien à voir entre elles.
Mon problème est que je n'ai peu ou pas de classes ds mon projet mais beaucoup de files .as3 que j'importe par <fx:Script/>. Je m'aperçois depuis peu (d'où ma question initiale) que je dois refaire peu ou prou la même chose et bien sur, si je veux mixer les imports, j'ai des "duplicate name, function' dans tous les sens.

Finalement, je pense que le mal est plus profond et que je ne saisis pas bien la nécessité de créer une classe ou que je confonds avec les fichiers as3.
Ca doit être mon vieux côté procédural...

Donc finalement, je suis un peu trop généraliste et il va falloir que je m'y mette plus sérieusement pour distinguer un objet "réel" d'un objet "abstrait" .

une dernière demande d'info: à partir de combien de vues gérées cela devient-il pertinent/nécessaire/indispensable de passer en architecture type MVC?

Merci qd même
FlexBeginner est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2012, 13h41   #4
titouille
Membre éclairé
 
Avatar de titouille
 
Inscription : juin 2005
Messages : 342
Détails du profil
Informations personnelles :
Âge : 33
Localisation : Suisse

Informations forums :
Inscription : juin 2005
Messages : 342
Points : 311
Points : 311
juste pour clarifier un peu (ou te mettre encore un peu plus le doute, lol) fais quelques recherches sur le pattern "Factory" pour mieux comprendre l'intérêt des interfaces.

En gros, créer une interface qui va déclarer des méthodes et créer des classes qui implémentent cette interface va te permettre de "caster" tes classes sous la forme d'interface et de faire appel à des méthodes communes, exemple (en pseudo code, ça fait trop longtemps que j'ai pas fait d'AS3 pour être propre dans le code :p) :

Code :
1
2
var myClass:IClass = new myClass();
myClass.myFunction( ... );

Tu n'as plus besoin de connaitre le type exact de "myClass" pour exécuter la méthode myFunction( ... ).

L'implémentation d'interfaces prend tout son sens lorsque tu veux utiliser le pattern Factory.
titouille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2012, 13h47   #5
titouille
Membre éclairé
 
Avatar de titouille
 
Inscription : juin 2005
Messages : 342
Détails du profil
Informations personnelles :
Âge : 33
Localisation : Suisse

Informations forums :
Inscription : juin 2005
Messages : 342
Points : 311
Points : 311
En y repensant, j'avais fait un truc assez magnifique et bien expliqué sur ce forum, qui utilise une interface... Jette un oeil à ce thread. C'est un peu compliqué, mais ça démontre bien l'utilisation d'interface :

http://www.developpez.net/forums/d84...d/#post4837323

Bon courage, a+
titouille est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 10h31.


 
 
 
 
Partenaires

Hébergement Web