Flashhilfe.de - Flash Community

Klasse ohne Konstruktor - Statische Klasse? [Flash 9]

 


AntwortenRegistrieren Seite1 2 3  

badskill#17
Benutzerbild von badskillFlashhilfe.de Moderator
Beiträge: 5285
Wohnort: Bernau (bei Berlin)
Registriert: Nov 2002

13.11.2008, 16:58

Natürlich sollte man das nicht auf die Spitze treiben und möglichst viele Komponenten nicht von dem Singleton abhängig machen sollte. Mir ist klar, dass hier öffentliche Schnittstellen und/oder Referenzen die bessere Lösung sind.
Jedoch finde ich es oft sehr angenehm, wenn man eine zentrale Stelle hat, wo die Daten lagern und man diese Daten (über eine zusätzliche Controller-Klasse) auf die Komponenten verteilen kann.
Aus meiner Sicht haben Singletons durchaus ihre Berechtigung. Und Beispiele aus der Praxis zeigen mir, dass ich nicht der einzige bin, der so denkt.
omega psi#18
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 17:08

Nein, das sage ich ja auch nicht, ich denke halt nur anders. Ich würde mir auch die Controller Klasse sparen, die die Daten verteilt... Zwei Fliegen mit einer Klappe + saubere Schnittstellen für Komponenten...
Architectures - Refactoring - Prototyping - Coding - Training
omega psi#19
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 17:16

Ausserdem kennen die Komponenten unter Umständen Details über das System, da der Singleton in der Regel mehr Daten trägt, als die Komponente kennen sollte.

Beispiel ModelLocator: Zugriff auf das ganze Model. Wieso? Das braucht kein Mensch...
Architectures - Refactoring - Prototyping - Coding - Training
badskill#20
Benutzerbild von badskillFlashhilfe.de Moderator
Beiträge: 5285
Wohnort: Bernau (bei Berlin)
Registriert: Nov 2002

13.11.2008, 17:22

Also müssten dann Referenzen durch die Komponenten durchgereicht werden? Weil irgendjemand muss die ja kennen, damit die Schnittstellen genutzt werden können.

Edit:
Ausserdem kennen die Komponenten unter Umständen Details über das SystemOk. Erzeugt man jedoch dadurch nicht wieder eine Abhängigkeit, die wir eigentlich vermeiden wollten?
Geändert von badskill am 13.11.08 um 17:25 Uhr
omega psi#21
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 17:35

"Also müssten dann Referenzen durch die Komponenten durchgereicht werden? Weil irgendjemand muss die ja kennen, damit die Schnittstellen genutzt werden können." Ja... je nachdem wie viele Hierarchien du realisierst/realisieren musst ist das der Fall. Sind es mehr als 4 würde ich mir Gedanken machen. Das ist übrigens nichts anderes als das Decorator-Pattern zu implementieren <- mindestens genauso gängig/beliebt wie das Singelton Pattern, nur sexier ;)

"Ausserdem kennen die Komponenten unter Umständen Details über das System" <- das war auch als ein Contra von mir gemeint.
Architectures - Refactoring - Prototyping - Coding - Training
badskill#22
Benutzerbild von badskillFlashhilfe.de Moderator
Beiträge: 5285
Wohnort: Bernau (bei Berlin)
Registriert: Nov 2002

13.11.2008, 17:44

das war auch als ein Contra von mir gemeint. Stimmt. Mein Edit bitte ignorieren. :)
Ich werde mal die ganze Geschichte nochmal durchdenken und mir auf diesem Weg das Decorator-Pattern näher bringen. Mal schauen, was dabei herauskommt. Sicherlich was gutes.
Vielen Dank fürs Gespräch Herr Moderator. ;)

P.S. Glückwunsch übrigends. Ich weiss, falsches Forum, aber was solls. :)
omega psi#23
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 17:45

Viele Dank! ;)
Architectures - Refactoring - Prototyping - Coding - Training
Sebastian#24
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

13.11.2008, 19:06

Und um noch ein wenig vom Thema abzuschweifen, würde ich Euch PureMVC ans Herz legen, was meiner Meinung nach schicker und besser als Cairngorm ist ;)
- kommt übrigens auch ohne ModelLocator aus ;)

@niquito12
Wenn die Frage beantwortet ist, markier sie noch bitte als solches.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
burnZ#25
Benutzerbild von burnZ
Beiträge: 2827
Wohnort: Bayern
Registriert: Aug 2005

13.11.2008, 19:08

Irgendwie schweift das ja fast ins philosophische ab :P
omega psi#26
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 19:09

Ich komme immer mehr von MVC ab... lohnt sich unter Flex nicht. AS3 vielleicht noch... aber auch da gibt es andere Ansätze.
Architectures - Refactoring - Prototyping - Coding - Training
Sebastian#27
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

13.11.2008, 19:28

"Lohnt sich nicht?" Was meinst Du damit?

Ich bin froh das es das PureMVC gibt. Besonders bei großen Projekten ist es ohne entsprechendes Framework sehr schwer Struktur in sein Projekt zu kriegen. Oder gibt es eine bessere Alternative? Ich habe mich bisher nur mit Cairngorm, PureMVC und Mate-Framework auseinander gesetzt.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
omega psi#28
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

13.11.2008, 19:43

Die Frameworks sollten nicht dazu da sein, die Ordnung zu halten, geschweige denn sie zu schaffen. Die Frameworks nehmen dir nur die Infrastruktur ab, mehr nicht. Das machen sie gut - aber was anderes müssen sie nicht und sollten sie auch nicht <- es gibt keine Frameworks, bei denen das anders ist: wenn dein ERM Schema mist ist, hilft dir kein Hibernate, ist deine Domain model mist... kannst du auch Spring knicken.

Ich gehe in der Regel so vor, dass ich zunächst die Domäne konzipiere und implementiere, dann die Services und dann die View. Das geht auch horizontal hervorragend. So hast du auch keine Probleme Struktur in die Anwendung und alle Beteiligten wissen, worum es geht. Die View werden dann als Observer an die Domänenmodelle gekoppelt (<- und das ist mit DataBinding in Witz).

Sich ein Framework zu schnappen und dann drumrum zu coden, ist der falsche Ansatz. Zuerst konzipieren und dann schauen welches Framework einem wie Arbeit abnehmen kann.

Hier mal ein Artikel, der das ausdrücken könnte, was ich meinte: MVC als Antipattern
Architectures - Refactoring - Prototyping - Coding - Training
Sebastian#29
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

13.11.2008, 20:14

>> Die Frameworks nehmen dir nur die Infrastruktur ab, mehr nicht.
Da kann ich Dir leider überhaupt nicht zu stimmen. Ein Grundstruktur geben sie voraus. Wenn man sich nicht an sie hält ist natürlich auch dies zu nichte aber wenn man sich an Regeln nicht hält hat man dies natürlich nie. Das sie mir das komplette Schema, Modeling etc abnehmen, habe ich nicht gesagt und würde ich auch nie sagen.
Was Wiederverwendbarkeit angeht, ist besonders PureMVC hilfreich. Dank Multicore ist es leicht Module in bestehende Projekte zu implementieren. Wodurch es auch recht einfach ist in einem Team am gleichen Projekt zu arbeiten ohne sich in die Quere zu kommen.

Und das MVC generell mist wäre... ich finde PureMVC und Django super und würde einer so generellen Aussage nicht zustimmen.

Auch wenn ich das Thema sehr spannend finde und generell mehr darüber erfahren würde wie Deine Architektur ist, denke ich ist eine Grundsatzdiskussion an dieser Stelle aber fehl am Platz.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
omega psi#30
Benutzerbild von omega psi
Beiträge: 791
Registriert: Apr 2004

14.11.2008, 09:28

Ich schrieb nicht, das MVC Mist ist -> bitte noch einmal genau lesen.

Natürlich geben sie eine Struktur vor: die der Infrastruktur
- wie greife ich auf Services zu
- wie greife ich auf Daten zu
- wie greife ich auf die UIs zu.

Das ist aber nur ein Teil der ganzen Geschichte und wenn man sich moderne/aktuelle Paradigmen hält wie Model driven desgn oder Domain driven Design anschaust... da werden die Frameworks wenn erst zum Schluss eingesetzt/ausgewählt um spezifische Aufgaben zu lösen.

Module lassen sich auch super mit IoC Containers integrieren/ersetzten - das ist nicht die Frage. Die Frage ist, wie gut kann ich meine Anwendung implementieren und evtl. erweitern - vor allen Dingen wenn man darauf angewiesen ist, dass Teams verstehen was passier. Da spielt die Infrastruktur, die von IoC oder MVC Frameworks aufgebaut werden eine untergeordnete Rolle da es nicht darum geht Klassen an eine Singleton/Multiton Klasse zu hängen sondern wie lassen sich Services/Komponenten implementieren, die auch vernünftig mit dem Rest der Anwendung interagieren. Das ist die Herausforderung im Software-Engeneering.
Architectures - Refactoring - Prototyping - Coding - Training
Sebastian#31
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

14.11.2008, 10:05

Ich kenne die von Dir genannten Design Patterns nur zum Teil.
Hättest Du Lust mal einen Thread über das Thema zu starten in dem Du ein kleines Beispiel Projekt anhängst? Würde mich zumindest sehr interessieren... wenn Dir das zu viel Arbeit ist, verstehe ich das natürlich.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil

AntwortenRegistrieren Seite1 2 3  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2020 Sebastian Wichmann - Flashhilfe.de