Zurück   Flashforum > Flash > ActionScript > Softwarearchitektur und Entwurfsmuster

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-06-2011, 10:09   #1 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.364
Lieber CustomEvent oder public properties?

Hi,

ich möchte zwischen zwei Komponenten einen Datensatz transportieren.
Ein Controller hört auf die eine Komponente, die den Datensatz ausgibt und fügt diesen in der zweiten Komponente ein.

Hierzu könnte ich entweder einen eigenen Event-Typen anlegen, in dem ich die Daten übergebe. Ich könnte die Daten aber auch mit gettern und settern public anlegen, sodass der Controller die Daten einfach ausliest und setzt. Dafür müsste ich keinen eigenen Event-Typen anlegen.

Habe ich mich einigermaßen verständlich ausgedrückt?
Und falls ja, würde ihr mir dennoch zu einem eigenen Event-Typen raten? Und wenn ja, wieso?
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Alt 27-06-2011, 10:22   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 7.306
Wenn der Controller das Objekt eh kennt, fände ich es sinnvoller diesem eine public-Property zu geben und dann mit einem Standard-Event zu arbeiten. Für jeden Furtz eine eigene Event-Klasse zuschreiben, macht es IMHO nämlich den Code ziemlich unübersichtlich und damit fehleranfällig.

Auch die FlashPlayer API geht ja eher sparsam mit Event-Klassen um und lässt diese in den seltensten Flällen irgendwelche Werte transportiert. Meistens erhält man nur das Objekt als target, bei dem man sich dann die entsprechenden Werte abholen kann.
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (27-06-2011 um 10:24 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 27-06-2011, 10:54   #3 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.364
Danke.
So habe ich es in der Vergangenheit auch meistens gemacht.

Ich habe aber noch nicht verstanden, wann CustomEvents Sinn gegenüber Public properties machen und ob ich es evtl. auch für gewisse Fälle so umsetzen sollte.
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Alt 27-06-2011, 19:29   #4 (permalink)
BenutzerID: 436
 
Benutzerbild von Sebastian S.
 
Registriert seit: Jun 2001
Ort: Ruhrgebiet
Beiträge: 2.323
Zitat:
Zitat von Mr.Twister Beitrag anzeigen
Danke.
So habe ich es in der Vergangenheit auch meistens gemacht.

Ich habe aber noch nicht verstanden, wann CustomEvents Sinn gegenüber Public properties machen und ob ich es evtl. auch für gewisse Fälle so umsetzen sollte.
Dann, wenn sich die Objekte nicht kennen
Sebastian S. ist offline   Mit Zitat antworten
Alt 27-06-2011, 20:10   #5 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 3.563
Zitat:
Zitat von Sebastian S. Beitrag anzeigen
Dann, wenn sich die Objekte nicht kennen
war der hier besprochene Ansatz nicht so, das der Eventwerfer immer über .target bekannt ist?
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 27-06-2011, 20:22   #6 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Bremen
Beiträge: 13.382
Als Beispiel könnte man ItemRenderer in Flex nehmen. An die Instanzen kommt man schon nicht einfach ran. Wenn es aber nun komplexe Renderer sind, die data zum Mediator/ViewController schicken wollen, dann wird das ohne dedizierte Events schwer, weil du eben die Eventquelle nur schwer identifizieren kannst. Ausserdem kannst du über die Events Pseudoprotokolle definieren, die stark typisierte Referenzen enthalten, was den Code leichter zu lesen macht, weil man weiss, worauf man achten muss, bzw. was zu erwarten ist. Gerade in Projekten mit vielen Services ist das sinnvoll.
Omega Psi ist offline   Mit Zitat antworten
Alt 27-06-2011, 20:28   #7 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Bremen
Beiträge: 13.382
Aber wieso das target kennen wollen?
Omega Psi ist offline   Mit Zitat antworten
Alt 27-06-2011, 22:14   #8 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 3.563
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Aber wieso das target kennen wollen?
siehe post 1 und 2
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 27-06-2011, 22:25   #9 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Bremen
Beiträge: 13.382
Dann muss man nicht nur die Schnittstelle des Dispatchers kennen, sondern auch die Implementierung (wer dispatched das Event: irgendein Child oder die Komponente selbst). Das kann man durch Eventbubbling gut verbergen. Wieso also konkret werden wollen, wenn man nur die Events kennen muss?
Omega Psi ist offline   Mit Zitat antworten
Alt 27-06-2011, 22:43   #10 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 3.563
Zitat:
Zitat von Omega Psi Beitrag anzeigen
die Schnittstelle des Dispatchers kennen
das leuchtet ein.
der target müsste ja erst zu etwas gecastet werden, um auf public eigenschaften/methoden zuzugreifen, das custom event nicht.
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 28-06-2011, 07:14   #11 (permalink)
Developer
 
Benutzerbild von malthoff
 
Registriert seit: Sep 2001
Ort: Stuttgart
Beiträge: 519
Ein eigenes Event wäre auch dann sinnvoll, wenn noch andere Elemente deiner Anwendung an dem "Event" interessiert wären.
malthoff ist offline   Mit Zitat antworten
Alt 28-06-2011, 08:27   #12 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Bremen
Beiträge: 13.382
Wie meinst du das?
Omega Psi ist offline   Mit Zitat antworten
Alt 28-06-2011, 08:34   #13 (permalink)
Developer
 
Benutzerbild von malthoff
 
Registriert seit: Sep 2001
Ort: Stuttgart
Beiträge: 519
Die Frage war, welche Variante die bessere sei.

Es wäre sinnvoller ein typisiertes Event zu haben, welches in der gesamten Anwendung gebroadcasted werden könnte, wenn noch andere Teile der Anwendung daran Interesse hätten.

Wenn sich die Objekte kennen - also eh eine starke Verbindung zwischen ihnen besteht - ist ein Setzen über property auch gut (=weniger aufwendig).

Geändert von malthoff (28-06-2011 um 08:35 Uhr)
malthoff ist offline   Mit Zitat antworten
Alt 28-06-2011, 08:46   #14 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Bremen
Beiträge: 13.382
Oui, ich verstehe.
Omega Psi ist offline   Mit Zitat antworten
Alt 29-06-2011, 17:22   #15 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.364
jupp, treffendes Argument.

thx
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
CustomEvent einbinden - Import oder [Event(name="... SynSyn ActionScript 3 0 05-04-2010 14:13
if else oder lieber switch???? Uwe2005 Flash Einsteiger 3 05-03-2007 15:00
If oder doch lieber Switch? jonny-noob Spielkonzepte und Spieleprogrammierung 4 30-08-2006 21:29
lieber 2 fla's oder 1 fla mit 2 szene ?? dat brot Flash MX 1 10-12-2004 17:38
flash oder doch lieber director??? stephansim Flash MX 4 14-10-2004 14:48


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:22 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2014 Marc Thiele