IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

Optimisation de mon code ActionScript


Sujet :

Flash

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 27
    Points
    27
    Par défaut Optimisation de mon code ActionScript
    Bonjour,
    J'aurais une petite question au sujet du flash.
    Je réalise un site entièrement en flash. Actuellement, il y a plus de 3000 lignes de codes.
    Quel est le plus rigoureux?
    • diviser le code dans des calques différents (en les regroupant par thématique)
    • laisser tout le code dans un seul calque (comme c'est le cas actuellement)
    • mettre le code dans un fichier .As ou plusieurs fichiers .AS

  2. #2
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    programmation objet -> les CLASSES
    et tu n'auras plus que quelques lignes d'importation et de déclaration dans ton SWF !
    Le plus grand arbre est né d'une graine menue, une tour de neuf étages est partie d'une poignée de terre.
    Mon blog : http://web.codeur.free.fr

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Pourrais-tu développer, s'il te plaît?
    Comment est-ce que ça fonctionne?
    je dois déclarer une classe pour le tout? ou faire des classes thématiques?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 25
    Points : 31
    Points
    31
    Par défaut
    Une classe par type d'objet que tu manipules semble le plus judicieux (exemple : utilisateur, caddy, média...), puis une classe générale qui s'occupe d'appeler tes autres objets (exemple : main ^^).
    Ce qui te fait donc un fichier .as par classe + au moins un fichier .as pour appeler tes autres .as.
    Mais il vaut mieux avoir un minimum de connaissances en langage objet avant de lancer la migration de ton code procédural en objet ^^

    Bonne chance!

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Une classe par type d'objet que tu manipules semble le plus judicieux (exemple : utilisateur, caddy, média...), puis une classe générale qui s'occupe d'appeler tes autres objets (exemple : main ^^).
    Ce qui te fait donc un fichier .as par classe + au moins un fichier .as pour appeler tes autres .as.
    Mais il vaut mieux avoir un minimum de connaissances en langage objet avant de lancer la migration de ton code procédural en objet ^^

    Bonne chance!
    Oui, merci pour l'explication, j'ai déjà des connaissances en langage objet grâce au java. donc jpense que ce sera plus facile. j'ai commencé à me documenté sur le sujet, et je vois que c'est "à peu près" pareil (du moins du point de vue de la méthode).
    Pour le moment, j'ai les classes suivantes
    • base (qui regroupe les fonctions qui affiche et masque les éléments du mon anim)
    • reta (qui remet à 0 tous les formulaires)
    • verif (qui vérifie que les champs des formulaires sont bien remplis
    • envoi (qui envoi le formulaire)
      etc.


    Pensez-vous que c'est une bonne répartition de mes fonctions, ou qu'il est plus judicieux, de répartir mes classes par emplacement dans le site exemple : une classe espace public, une classe espace client, etc.

  6. #6
    Membre du Club Avatar de Tigrounette
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 132
    Points : 69
    Points
    69
    Par défaut
    Je developpe un une grosse application flash depuis un certain temps et j'ai aussi beaucoup de ligne de code.

    Personnellement, pour ce genre de gros truc, je decoupe mon code pour le mettre dans les clip auquel il se réfère. C'est un jeu, donc par exemple, je vais mettre tout le code qui gère les combats dans le clip qui affiche et s'occupe des combats.

    Ensuite je met les fonctions principales à la racine.

    Je trouve ça beaucoup plus pratique pour les grosses applications/sites, même si c'est franchement pas rigoureux.

    Comme dit plus haut, la "bonne" façon de faire, c'est d'utiliser un maximum de class. Mais personnellement ça me dit rien (alors que je programme aussi régulièrement en java) je trouve que ca met plus le bordel qu'autre chose.

    Pour les petits sites, mettre tout son code dans un calque à la racine j'aime bien.

    Après ce n'est pas de l'optimisation, ton code ne sera pas plus rapide.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Je vous remercie pour tous ces conseils.
    Après ce n'est pas de l'optimisation, ton code ne sera pas plus rapide
    C'est vrai que je me rends compte que j'ai mal formulé mon post. Je voulais surtout savoir comment organiser au mieux mon code, et de la façon la plus rigoureuse possible.

  8. #8
    Membre émérite Avatar de dom_dev
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 073
    Points : 2 338
    Points
    2 338
    Par défaut
    bonjour,

    Citation Envoyé par amnesias
    reta (qui remet à 0 tous les formulaires)
    verif (qui vérifie que les champs des formulaires sont bien remplis
    C'est un exemple de "mauvais" code. Tu refais du "procedural" déguisé en objet. Les méthodes qui agissent sur un formulaire doivent se trouver dans la classe formulaire.
    Grosso modo ta classe formulaire devrait avoir des methodes genre, "set" "display" "valide" ou "control" etc...

    une classe espace public, une classe espace client, etc.
    Là je pense que ce serait une erreur, un espace devrait à mon avis plutôt correspondre à une "vue".
    Si la ou les réponses obtenues vous ont donné satisfaction n'oublier pas ->
    Et ne rajoutez pas de nouvelles questions éternellement dans le même post surtout si vous en n'êtes pas l'auteur
    MERCI

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Grosso modo ta classe formulaire devrait avoir des methodes genre, "set" "display" "valide" ou "control" etc...
    Je comprend ce ke tu veux dire. Mais comment faire alors?
    car j'ai une dizaine de formulaires différents, avec des champs différents.

    donc comment je peux créer un objet de la classe formulaire qui tient compte des particularités de chacun de mes formulaires.

    Exemple : si j'ai un formulaire A avec un champ de texte et un formulaire B avec une case à cocher.
    dans ma classe formulaire, comment faire une fonction reinitialiser_formulaire(), sachant que leur composition est différente. je ne pourrais pas faire
    formA.reinitialiser_formulaire()
    formB.reinitialiser_formulaire()
    si?

  10. #10
    Membre émérite Avatar de dom_dev
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 073
    Points : 2 338
    Points
    2 338
    Par défaut
    bonsoir,

    et bien si justement c'est là tout l'interet d'une orientation objet. Chaque objet formulaire aura sa propre methode de reinitialisation et la classe qui utilisera des formulaires n'aura pas à se soucier de quelle manière ce sera reinitialisé.
    Remarque ce n'est pas la peine de préciser "reinitialiser_formulaire" simplement formA.reinitialiser()

    ceci dit pour flash je partage un peu l'avis de "Tigrounette"

    Si la ou les réponses obtenues vous ont donné satisfaction n'oublier pas ->
    Et ne rajoutez pas de nouvelles questions éternellement dans le même post surtout si vous en n'êtes pas l'auteur
    MERCI

Discussions similaires

  1. [MySQL] Optimisation de mon code utilisant simple xml
    Par heretik25 dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 05/08/2011, 20h13
  2. Optimisation de mon code
    Par ordner dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 06/03/2009, 16h19
  3. Réponses: 5
    Dernier message: 23/05/2007, 10h25
  4. OPTIMISER mon code
    Par valoji dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/03/2006, 18h45
  5. Optimiser mon code ASP/HTML
    Par ahage4x4 dans le forum ASP
    Réponses: 7
    Dernier message: 30/05/2005, 10h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo