Stocker, trier, classer, des Objects dans une liste = Les définitions d'objets ?

15 views
Skip to first unread message

ths otra

unread,
Aug 6, 2009, 5:14:50 AM8/6/09
to vegasos
Salut Vegasien, salut Ekameleon,


Tout d'abord, il faut m'excuser de mon acharnement qui pourrait être incorrect: j'ai posté la même question que je m'apprête à vous poser sur le forum mediabox et même sur l'IRC lien (avec code). Seulement voilà, j'ai vraiment envie de réfléchir à une bonne construction avant de mettre au boulot.

J'essaie de faire plus simple. Je crée un nombre déterminé d'objet au démarrage d'une application (textfield ou text3D -papervision-) que je souhaiterais pouvoir:

- identifier individuellement pour les atteindre aisément
- modifier leurs caractéristiques ( inhérentes à l'object :  .text="xx" par exemple. Ou avec des paramètres maisons: actif = false )
- les lister, trier, filtrer, en fonction de ces paramètres maisons par des boucles et les modifier par "lots"
- leurs affecter des timers internes qui modifieraient leurs paramètres et déclencheraient des Events.


J'ai vu une manière de faire qui ressemblerait peut-être à ce que je cherche: http://groups.google.com/group/vegasos/web/b---les-dfinitions-dobjets-introduction---1-5  est une bonne manière de faire pour ce que je viens de vous expliquer ?


Bonnes vacances à tout ceux qui sont en vacances !!! et merci d'avance pour vos conseils !

 

eKameleon

unread,
Aug 6, 2009, 5:26:34 AM8/6/09
to VEGAS - ECMASCript & ActionScript OpenSource framework
Hello :)

Oui forcément l'IoC est la meilleure des solutions pour moi sur tes
problématiques.

Maintenant le plus simple c'est de t'y mettre pour te faire une idée
en téléchargeant VEGAS et mon framework documentaire AST'r pour voir
comment tout cela fonctionne avec en parallèle la lecture du e-book
sur le sujet :

http://docs.google.com/View?id=dfd9s8cg_15g3ct8rfb
http://docs.google.com/View?id=dfd9s8cg_27c5s2pwkd

etc.

Tu retrouves sur mon blog sous forme d'articles une partie du e-book
ci-dessus.

Sinon pour la gestion de ton application tu peux utiliser un pattern
MVC, .. tu trouveras dans mes exemples tout ce qu'il faut pour
apprendre à t'en servir.

PS : j'ai regardé ton code avec des new Array(value, value, value)
etc.. sur mediabox. faudrait peut être que tu mettes à jour un peu ta
façon de coder avant d'attaquer des principes de développement
avancé ;) Cela peut aider pour la suite ;)

Donc conclusion installe VEGAS et AST'r :

http://code.google.com/p/vegas/wiki/InstallVEGASwithSVN
http://code.google.com/p/astr/wiki/installAstrWithSVN

Et ensuite essai de regarder le code et les architectures
d'applications dans les exemples dans AST'r avec egallery, etc.

http://code.google.com/p/astr/source/browse/#svn/trunk/AS3/trunk/examples/egallery
http://code.google.com/p/astr/source/browse/#svn/trunk/AS3/trunk/examples/evideo

Pour finir pour isoler le pattern MVC et l'étudier tranquillement, je
te conseille de regarder dans les sources de VEGAS dans le répertoire
AS3/trunk/bin/tutorials/mvc pour comprendre sans l'IoC comment
utiliser un MVC avec FrontController basé W3C event model dom2/3

A noter aussi de la lecture sur le groups de Maashaack (base de
VEGAS) :

http://code.google.com/p/maashaack/wiki/Events

Cela peut t'aider pour bien maitriser le modèle événementiel AS3 de
VEGAS :)

Sinon tu peux lire aussi les tutoriels dans ce Google Groups :

http://groups.google.com/group/vegasos/web

EKA+ :)

On 6 août, 11:14, ths otra <ths.o...@gmail.com> wrote:
> Salut Vegasien, salut Ekameleon,
>
> Tout d'abord, il faut m'excuser de mon acharnement qui pourrait être
> incorrect: j'ai posté la même question que je m'apprête à vous poser sur le
> forum mediabox et même sur l'IRC
> lien<http://flash.mediabox.fr/index.php?showtopic=103125>(avec code).
> Seulement voilà, j'ai vraiment envie de réfléchir à une bonne
> construction avant de mettre au boulot.
>
> J'essaie de faire plus simple. Je crée un nombre déterminé d'objet au
> démarrage d'une application (textfield ou text3D -papervision-) que je
> souhaiterais pouvoir:
>
> - identifier individuellement pour les atteindre aisément
> - modifier leurs caractéristiques ( inhérentes à l'object :  .text="xx" par
> exemple. Ou avec des paramètres maisons: actif = false )
> - les lister, trier, filtrer, en fonction de ces paramètres maisons par des
> boucles et les modifier par "lots"
> - leurs affecter des timers internes qui modifieraient leurs paramètres et
> déclencheraient des Events.
>
> J'ai vu une manière de faire qui ressemblerait peut-être à ce que je
> cherche:http://groups.google.com/group/vegasos/web/b---les-dfinitions-dobjets...

ths otra

unread,
Aug 6, 2009, 6:26:02 AM8/6/09
to veg...@googlegroups.com
Salut eka,

Merci de ta réponse !

Pour être franc, c'est assez massif et impressionnant l'ampleur de la mise à jour dans ma façon de coder que tu évoques ;-)
Cela dit, c'est passionnant (j'utilise déjà certains parties de ton framework)

Actuellement je suis entrain de re-installer astr' pour essayer de démarrer avec une application basée un pattern MVC et je vais y consacrer ma journée. (peut-être que tu auras quelques questions si je me paume ;-) ) puis, si tout roule, bientôt, je m'attaquerais à l' IOC.

merci encore,

ps:
1ère question, je tente d'executer egallery basic et j'ai des erreurs:

Dans Flash developp: /src/egallery/Application.as :
Error #2044: ioError non pris en charge : text=Error #2032: Erreur de flux. URL: file:///C|/.../bin/./context/application.eden

dans Firefox: /bin/deploy/index

SecurityError: Error #2148: Le fichier SWF file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf ne peut pas accéder à la ressource locale ./context/application.eden. Seuls les fichiers SWF local-système de fichiers et les fichiers locaux de confiance peuvent accéder aux ressources locales.
    at flash.net::URLStream/load()
    at flash.net::URLLoader/load()
    at system.process::ActionURLLoader/_run()
    at system.process::CoreActionLoader/run()
    at system.process::Sequencer/run()
    at andromeda.ioc.net::ObjectFactoryLoader/_runSequencer()
    at andromeda.ioc.net::ObjectFactoryLoader/run()
    at egallery::Application()

et si je clique sur continuer après plusieurs erreurs:
Erreur
:La demande de la ressource à xmlsocket://localhost:4444 par le
demandeur à
file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf
a échoué car le serveur est inatteignable.
*** Violation de la sécurité Sandbox***
Interruption
de la connexion à localhost:4444 - opération interdite depuis
file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf



Je ne dois pas avoir capter comment exécuter les exemples Astr' ?

NairuS

unread,
Aug 6, 2009, 7:33:07 AM8/6/09
to veg...@googlegroups.com
Hello,

Le 6 août 2009 12:26, ths otra <ths....@gmail.com> a écrit :
Salut eka,

Merci de ta réponse !

Pour être franc, c'est assez massif et impressionnant l'ampleur de la mise à jour dans ma façon de coder que tu évoques ;-)
Cela dit, c'est passionnant (j'utilise déjà certains parties de ton framework)

Actuellement je suis entrain de re-installer astr' pour essayer de démarrer avec une application basée un pattern MVC et je vais y consacrer ma journée. (peut-être que tu auras quelques questions si je me paume ;-) ) puis, si tout roule, bientôt, je m'attaquerais à l' IOC.

merci encore,

ps:
1ère question, je tente d'executer egallery basic et j'ai des erreurs:

Dans Flash developp: /src/egallery/Application.as :
Error #2044: ioError non pris en charge : text=Error #2032: Erreur de flux. URL: file:///C|/.../bin/./context/application.eden

Tu as autorisé le flashplayer à utiliser cette ressource ?

dans Firefox: /bin/deploy/index

SecurityError: Error #2148: Le fichier SWF file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf ne peut pas accéder à la ressource locale ./context/application.eden. Seuls les fichiers SWF local-système de fichiers et les fichiers locaux de confiance peuvent accéder aux ressources locales.
    at flash.net::URLStream/load()
    at flash.net::URLLoader/load()
    at system.process::ActionURLLoader/_run()
    at system.process::CoreActionLoader/run()
    at system.process::Sequencer/run()
    at andromeda.ioc.net::ObjectFactoryLoader/_runSequencer()
    at andromeda.ioc.net::ObjectFactoryLoader/run()
    at egallery::Application()

et si je clique sur continuer après plusieurs erreurs:
Erreur
:La demande de la ressource à xmlsocket://localhost:4444 par le
demandeur à
file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf
a échoué car le serveur est inatteignable.
*** Violation de la sécurité Sandbox***
Interruption
de la connexion à localhost:4444 - opération interdite depuis
file:///C:/.../astr/trunk/AS3/trunk/examples/egallery/basic/trunk/deploy/index.swf



En générale, ce genre d'erreur provient de la sécurité du FP.
A++
NairuS

 

ekameleon

unread,
Aug 6, 2009, 8:09:29 AM8/6/09
to veg...@googlegroups.com
Hello :)

Dans ton SWF : bouton droit : Paramètres : Contrôles d'accès : Avancés : page web sur le site de Adobe : Panneau Paramètres globaux de sécurité :

Ensuite tu ajoutes la racine de ton disk dur dans la liste ... et le tour est joué.

PS : il existe une application en ligne de commande sur le site de Adobe pour définir les droits de tes répertoires sans internet mais c'est sérieusement plus compliqué à utiliser.

C'est la base de la sécurité du FlashPlayer en local (security sand box) ton problème ;) Problème récurrent depuis la version 7 du player :) tout fichier texte (.txt, .xml, etc...) ne peuvent pas être chargés sans la suppression de la sécurité.

EKA+ :)

ekameleon

unread,
Aug 6, 2009, 8:13:02 AM8/6/09
to veg...@googlegroups.com
Hello :)

PS : Pour ton problème du début, prends le temps de regarder le package system.data de VEGAS avec dedans toutes les ADT (Abstract Data Types) : Collection, Map, etc.

EKA+ :)

ths otra

unread,
Aug 6, 2009, 12:41:29 PM8/6/09
to veg...@googlegroups.com
Hello,

Merci à vous deux pour vos réponses. Effectivement, problème de sécurité !

En regardant le code, je me suis rendu compte que j'ignorais beaucoup trop de choses pour pouvoir le comprendre. j'ai décidé d'attaquer l'article http://docs.google.com/Doc?docid=dfd9s8cg_15g3ct8rfb&hl=en  | design patern
Déjà, j'y vois bien plus clair et je suis vraiment abasourdi par la puissance et la flexibilité que cela pourra apporter au projet que je développe !

J'avance, j'avance et vous embêterai peut-être bientôt !

euh, juste une question par rapport au DOCs : IObjectFactory est bien devenu ObjectFactory ?


Modestes contributions des corrections: (sinon je les rassemble ça dans des fichiers textes et t'envoie ça dès que j'ai fini)

(doc: http://docs.google.com/Doc?docid=dfd9s8cg_15g3ct8rfb&hl=en)
 - S au lieu de T :
nous pourront noter en particulier
--> devient: nous pourrons noter en particulier

(doc: http://docs.google.com/Doc?id=dfd9s8cg_27c5s2pwkd)
- Manque une virgule à à la fin de la ligne :
{name : "url"       , value : "http://www.ekameleon.net" }  
---> devient :       { name : "url"    ,    value : "http://www.ekameleon.net" },

ekameleon

unread,
Aug 6, 2009, 1:24:13 PM8/6/09
to veg...@googlegroups.com
Hello :)

IObjectFactory c'est l'interface de la classe ObjectFactory (donc pas la même chose ;)

Sinon merci pour les corrections, je verrais cela ce week-end, d'ailleurs faut que je finisse les derniers chapitres sur les ressources i18n, text et shader. 

Si tu en trouves d'autres je te propose d'ouvrir une issue sur le google code de AndromedAS :


EKA+ :)
Reply all
Reply to author
Forward
0 new messages