Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-01-2012, 08:10   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 106
zugriff auf funktion oder variable einer übergeordneten klasse

hey hab mal ne frage, über die ich irgendwie immer wieder stolpere und bis jetzt nie eine richtige lösung bekommen konnte.

ich habe meine main.xml (meine Hauptklasse in Flashbuilder), welche aus hunderten Funktionen besteht. Einige dieser Funktionen würde ich gerne in eine separate Klasse auslagern. Das führt allerdings zu Problemen, da ich z.B. innerhalb dieser Funktionen immer wieder globale Variablen abfragen bzw. verändern muss. Wie mach ich das am besten?

sagen wir in der Hauptklasse habe ich eine bool variable "doorIsOpen". Wie kann ich aus einer untergeordneten Klasse diese Variable prüfen bzw. abfragen?


grüße, manu
le_unam ist offline   Mit Zitat antworten
Alt 03-01-2012, 09:20   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Zitat:
Zitat von le_unam Beitrag anzeigen
ich habe meine main.xml (meine Hauptklasse in Flashbuilder), ...
Sollte diese Datei nicht Main.as (wenn es tatsächlich eine AS-Klasse) ist oder Main.mxml (wenn es sich um eine Flex MXML-Datei handelt) heißen

Zitat:
Zitat von le_unam Beitrag anzeigen
...welche aus hunderten Funktionen besteht.
Das klingt nach einem fiesen Designfehler Eine Klasse sollte immer ein klar umrissenes Aufgaben Gebiet haben.

Zitat:
Zitat von le_unam Beitrag anzeigen
Einige dieser Funktionen würde ich gerne in eine separate Klasse auslagern.
Klassen sind nicht dazu da einfach Code auszulagern, der von seiner Logik fest in irgendwelchen anderen Konstrukten verdrahtet ist (dafür gäbe es include). Klassen sind viel mehr Baupläne für Objekte, die weitestgehend autark agieren bzw. über festgelegte Schnittstellen interagieren können. Ich weiß nicht wie fit Du in diesen OOP-Basics bist, aber hier sind zwei Posts aus älteren Threads, in denen ich dieses Thema mal etwas erläutert habe:Es ist extrem schwierig und zeitaufwändig bestehenden Spaghetticode auf mehrere Klassen aufzusplitten. Ich würde Dir daher fast raten, es im bestehenden Projekt so zu lassen, wie es ist, und dafür das nächste Projekt von vornherein sauber in Klassen aufzuteilen.

Zitat:
Zitat von le_unam Beitrag anzeigen
Das führt allerdings zu Problemen, da ich z.B. innerhalb dieser Funktionen immer wieder globale Variablen abfragen bzw. verändern muss. Wie mach ich das am besten?
Natürlich lassen sich auch Klassen (oder Instanzen) und die darin befindlichen Variablen global referenzieren. Allerdings schafft das (unnötige) Abhängigkeiten, die den OOP-Prinzipien wiedersprechen und irgendwann unweigerlich zu Problemen führen...
__________________
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!
Martin Kraft ist offline   Mit Zitat antworten
Alt 03-01-2012, 10:37   #3 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 2.041
Zitat:
Zitat von le_unam Beitrag anzeigen
sagen wir in der Hauptklasse habe ich eine bool variable "doorIsOpen". Wie kann ich aus einer untergeordneten Klasse diese Variable prüfen bzw. abfragen?
Ist das ein konstruiertes Beispiel?

Wenn die Variable zur übergeordneten Klasse gehört, ließe sich über Events vermitteln. Der unten löst es aus, der oben hört zu und ändert seine Variable.

Oder aber die Variable steht für sich. Dann würde man wohl diese Variable (samt zugehöriger Türöffnungslogik) in eine Tür Klasse auslagern.

Oder... oder...

Welche Variante nun eine gute wäre, lässt sich anhand der spärlichen Informationen schwer sagen.
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist gerade online   Mit Zitat antworten
Alt 03-01-2012, 11:44   #4 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 106
okay danke für eure antworten ... ich merke schon ... ich muss mir nochmal im vorfeld ein paar mehr gedanken über den ganzen komplex machen ^^

merci
le_unam 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
Zugriff auf Instanzen einer Klasse TIghty ActionScript 3 1 22-12-2009 12:34
Zugriff auf Eigenschaft der übergeordneten Klasse AS3_justwhy ActionScript 3 3 06-10-2009 12:58
Zugriff auf globale Variable in ner Klasse marox ActionScript 3 1 18-06-2008 16:46
Zugriff auf XML-Object in einer Klasse flashpixel ActionScript 2 4 02-05-2006 14:31
ansprechen einer übergeordneten (keine Vererbung) Klasse std8612 Softwarearchitektur und Entwurfsmuster 3 17-07-2003 15:41


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:47 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele