Logic-Data-View-Controller-Service-Paradigma/Logic: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Wechseln zu:Navigation, Suche
(Die Seite wurde neu angelegt: „{{MVC:Menü}} =Definition (nach Kowarschick (MMProg))= Ein Logikmodul (engl. [[GlossaryWiki:Logic-Data-…“)
 
(Definition (nach Kowarschick (MMProg)))
Zeile 6: Zeile 6:
 
dient zur Realisierung der Anwendungslogik.
 
dient zur Realisierung der Anwendungslogik.
  
Die Anwendungslogik kann durch Benutzeraktionen beeinflusst werden. Derartige Aktionen werden [[Model-View-Controller-Service-Paradigma/Controller|LDVCS-Controllern]]  
+
Diese Module werden i. Allg. durch externe Ereignisse (wie  [[Model-View-Controller-Service-Paradigma/Controller|Controlleraktionen]] oder Änderungen am
an Logikmodule weitergeleitet.
+
[[Logic-Data-View-Controller-Service-Paradigma/Data|Datenbestand]]) aktiviert.
  
TBD!
+
Wenn ein Logikmodul aktiviert wurde, kann es sowohl den Inhalt von beliebigen [[Logic-Data-View-Controller-Service-Paradigma/Data|LDVCS-Datenmodulen]] modifizieren
 
+
(gegebenenfalls nachdem es zuvor lesend auf denaktuellen Datenbestand zugegriffen hat), als auch
Einem Service stehen in speziellen [[Model-View-Controller-Service-Paradigma/Model|MVCS-Modellen]] bzw.
+
beliebige [[Logic-Data-View-Controller-Service-Paradigma/Service|LDVCS-Services]] aktivieren.
[[Logic-Data-View-Controller-Service-Paradigma/Data|LDVCS-Datenmodulen]] i. Allg. [[Container]] (wie z.B. Arrays, ein Hash Maps, Objekte oder Änhliches) zur Verfügung, aus denen er Daten auslesen kann oder in die er Daten einfügen kann, sobald
 
diese verfügbar sind.
 
Eventuell stehen ihm auch noch spezielle Status-Modelle bzw. -Datenmodule zur Verfügung, in denen er Statusmeldungen
 
über den aktuellen Stand und den Verlauf der Bearbeitung der Serviceanfrage eintragen kann.
 
  
 
<gallery  perrow="3" heights="317px" widths="250px">
 
<gallery  perrow="3" heights="317px" widths="250px">
 
  Medium:LDVCS-Prozess 01.png|Der LDVCS-Prozess
 
  Medium:LDVCS-Prozess 01.png|Der LDVCS-Prozess
 
</gallery>
 
</gallery>
 
==Eigenschaften eines Service-Modules==
 
 
Ein Service bearbeitet eine Anfrage im Allgemeinen [[asynchron]]. Sobald ein Ergebnis in einem Modell oder Daten-Modul eingetragen wurde, kann dieses Modul den Aufrufer und beliebig viele andere Module mit Hilfe eines [[Signal]]s darüber informieren.
 
Sollte die aktuelle Anfrage nicht erfolgreich bearbeitet werden können, so kann der Service eine
 
entsprechende Fehlermeldung in ein spezielles Fehler-Modell bzw. -Datenmodul eintragen, das dann die übrigen
 
Module über die aufgetretenen Probleme informiert. Ebenso können anderen Module über
 
die erfolgreiche Übertragung von Daten in die Außenwelt mit Hilfe
 
von speziellen Status-Modellen bzw. -Datenmodulen informiert werden.
 
 
Ein Service kann mehrere Anfragen hintereinander bearbeiten und dabei auch auf frühere Ergnisse (die er z.B. in privaten [[Zustandsvariable]]n abgelegt hat) zugreifen. In manchen Situation ist es vorteilhaft, wenn dem Aufrufer spezielle Services
 
zur Verfügung stehen, die eingehende Service-Anfragen nicht parallel, sondern nacheinander abarbeiten.
 
  
 
=Anmerkungen=
 
=Anmerkungen=

Version vom 13. Juli 2011, 18:34 Uhr

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:

Korrektheit: 4
(großteils überprüft)
Umfang: 3
(einige wichtige Fakten fehlen)
Quellenangaben: 4
(fast vollständig vorhanden)
Quellenarten: 4
(sehr gut)
Konformität: 4
(sehr gut)

Diese Bewertungen beziehen sich auf alle im nachfolgenden Menü genannten Artikel gleichermaßen.

1 Definition (nach Kowarschick (MMProg))

Ein Logikmodul (engl. logic module) einer LDVCS-Anwendung dient zur Realisierung der Anwendungslogik.

Diese Module werden i. Allg. durch externe Ereignisse (wie Controlleraktionen oder Änderungen am Datenbestand) aktiviert.

Wenn ein Logikmodul aktiviert wurde, kann es sowohl den Inhalt von beliebigen LDVCS-Datenmodulen modifizieren (gegebenenfalls nachdem es zuvor lesend auf denaktuellen Datenbestand zugegriffen hat), als auch beliebige LDVCS-Services aktivieren.

2 Anmerkungen

Die Idee, Services als eigene Module zu betrachten, d.h. das MVC-PAradigma zu einem MVCS-Paradigma zu erweitern, geht auf Joe Berkovitz zurück.[1]

MVCS-Services und VCLSD-Service unterscheiden sich nicht, wenn man davon absieht, dass MVCS-Services aus Modelle zugreifen und LDVCS-Services auf Daten-Module.

Die Aufrufer unterscheiden sich allerdings: MVCS-Services werden von MVCS-Controllern aufgerufen und VCLSD-Service werden von VCLSD-Logik-Modulen aufgerufen.

In MVC-Anwendungen übernehmen i. Allg. MVC-Modelle die Kommunikation mit der Außenwelt. Es ist auch denkbar, dass MVC-Controller diese Aufgabe übernehmen.

3 Quellen

  1. Kowarschick, W.: Multimedia-Programmierung

4 Siehe auch