Logic-Data-View-Controller-Service-Paradigma: Unterschied zwischen den Versionen
Kowa (Diskussion | Beiträge) K hat „Actions-Data-View-Controller-Services-Paradigma“ nach „Logic-Data-View-Controller-Services-Paradigma“ verschoben |
Kowa (Diskussion | Beiträge) |
||
| Zeile 15: | Zeile 15: | ||
== Beispiel Jump 'n' Run== | == Beispiel Jump 'n' Run== | ||
In einem [[Jump 'n' Run|Jump-'n'-Run]]-Spiel werden | In einem [[Jump 'n' Run|Jump-'n'-Run]]-Spiel werden Daten ('''Data''') über | ||
die Spielfigur (Position, Laufrichtiung, Geschwindigkeit ...), die Gegner, die Gegenstände etc. gespeichert. | die Spielfigur (Position, Laufrichtiung, Geschwindigkeit ...), die Gegner, die Gegenstände etc. gespeichert. | ||
Die View visualisiert die Elemente des Spiels mit Hilfe von Bildern und Animationen (Walk cyles etc.). | Die '''View'''' visualisiert die Elemente des Spiels mit Hilfe von Bildern und Animationen (Walk cyles etc.). | ||
Jede Änderung | Jede Änderung an den Daten hat, sofern sie sich im für den Spieler sichtbaren Bereich befindet, | ||
eine Anpassung der View zur Folge. | eine Anpassung der View zur Folge. | ||
Der Spieler steuert die Spielfigur mit Hilfe der Tastatur. Jeder Tastendruck wird vom Controller analysiert und | Der Spieler steuert die Spielfigur mit Hilfe der Tastatur. Jeder Tastendruck wird vom Controller analysiert und | ||
zur Manipulation der Spielfigur an das Model | zur Manipulation der Spielfigur an die Logik-Komponente ('''Logic''') weitergeleitet. | ||
Man beachte, dass das Model i. Allg. aktiv ist, d.h., die Logik-Komponente kann die Daten selbstständig, d.h. auch ohne Manipultation durch den | |||
Controller verändern. Beispielsweise werden die gegnerischen Figuren, sofern es welche gibt, direkt von der Logik-Komponente gesteuert. | |||
Mit Hilfe einer Service-Komponente ('''Service''') kann das Spiel zu einem Multiuser-Spiel erweitert werden. | |||
Die Service-Komponente hat dann zwei Aufgaben: | |||
# Die Position des eigenen Avatars an einen zentralen Server zu übertragen. | |||
# Die Postiion anderer Avatare und möglicher Gegener vom zentralen Server zu holen und in die eigene Datenkomponente zu schreiben. | |||
=Quellen= | =Quellen= | ||
Version vom 16. Juli 2010, 13:28 Uhr
Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.
Definition
Das Logic-Data-View-Controller-Services-Paradigma oder -Pattern, kurz LDVCS, bezeichnet ein Architekturmuster zur Trennung einer Anwendung in drei separate Einheiten: Logic (Logik), Data (Daten), View (Darstellung), Controller (Steuerung) und Service (Service).
Konzept
gerahmt||rechts|LDVCS-Prozess Dieses Paradigma ist eine Verfeinerung ddes Model-View-Controller-Paradigmas (genauer: des Model-View-Controller-Services-Paradigmas).
Die Model-Komponente des MVC-Paradigmas übernimmt normalerweise zwei Aufgaben: Die Speicherung der Business-Daten und die Realisierung der Business-Logik. Daher wird im ADVCS-Paradigma das Model in zwei Bestandteile zerlegt: Die Daten-Komponente (Data) und die Logik-Komponente (Logic).
Der LDVCS-Prozess
Beispiel Jump 'n' Run
In einem Jump-'n'-Run-Spiel werden Daten (Data) über die Spielfigur (Position, Laufrichtiung, Geschwindigkeit ...), die Gegner, die Gegenstände etc. gespeichert.
Die View' visualisiert die Elemente des Spiels mit Hilfe von Bildern und Animationen (Walk cyles etc.). Jede Änderung an den Daten hat, sofern sie sich im für den Spieler sichtbaren Bereich befindet, eine Anpassung der View zur Folge.
Der Spieler steuert die Spielfigur mit Hilfe der Tastatur. Jeder Tastendruck wird vom Controller analysiert und zur Manipulation der Spielfigur an die Logik-Komponente (Logic) weitergeleitet.
Man beachte, dass das Model i. Allg. aktiv ist, d.h., die Logik-Komponente kann die Daten selbstständig, d.h. auch ohne Manipultation durch den Controller verändern. Beispielsweise werden die gegnerischen Figuren, sofern es welche gibt, direkt von der Logik-Komponente gesteuert.
Mit Hilfe einer Service-Komponente (Service) kann das Spiel zu einem Multiuser-Spiel erweitert werden. Die Service-Komponente hat dann zwei Aufgaben:
- Die Position des eigenen Avatars an einen zentralen Server zu übertragen.
- Die Postiion anderer Avatare und möglicher Gegener vom zentralen Server zu holen und in die eigene Datenkomponente zu schreiben.
