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

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
(Die Seite wurde neu angelegt: „{{MVC:Menü}} gerahmt|rechts|Der VCLSD-Prozess =Definition (nach Kowarschick (MMProg))= ([[View-Controller-Logic-Service-Data…“)
 
Keine Bearbeitungszusammenfassung
 
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{MVC:Menü}}
{{MVC:Menü}}
[[Medium:VCLSD-Prozess 01.png|gerahmt|rechts|Der VCLSD-Prozess]]
[[Datei:LDVCS-Prozess 01.png|gerahmt|rechts|Der LDVCS-Prozess]]
=Definition (nach [[Kowarschick (MMProg)]])=
==Definition ([[Kowarschick (MMProg)]])==


([[View-Controller-Logic-Service-Data-Paradigma|VCLSD]]-)[[View-Controller-Logic-Service-Data-Paradigma/Service|Services]] dienen zur Kommunikation einer [[Anwendung]],
([[Logic-Data-View-Controller-Service-Paradigma|LDVCS]]-)[[Logic-Data-View-Controller-Service-Paradigma/Service|Services]] dienen zur Kommunikation einer [[Anwendung]],
die nach den [[View-Controller-Logic-Service-Data-Paradigma|VCLSD-Paradigma]] realisert wurde,
die nach dem [[Logic-Data-View-Controller-Service-Paradigma|LDVCS-Paradigma]] realisert wurde,
mit der Außenwelt, d.h. mit Dienste-Anbietern wie [[Web-Server]]n und [[Datenbanksystem]]en.
mit der Außenwelt, d.h. mit Dienste-Anbietern wie [[Web-Server]]n und [[Datenbanksystem]]en.
Service-Dienste können i. Allg. nur von [[View-Controller-Logic-Service-Data-Paradigma/Logic|Logik-Modulen]] oder anderen [[View-Controller-Logic-Service-Data-Paradigma/Service|Services]]
Service-Dienste können i. Allg. nur von [[Logic-Data-View-Controller-Service-Paradigma/Logic|Logik-Modulen]] oder anderen [[Logic-Data-View-Controller-Service-Paradigma/Service|Services]]
angefordert werden.
angefordert werden.


==Eigenschaften eines Service-Objektes==
===Eigenschaften eines Service-Objektes===


Der Aufrufer eines Services stellt i. Allg. in einem [View-Controller-Logic-Service-Data-Paradigma/Model|Model]] einen [[Container]] (wie z.B. ein Array, ein Objekt oder Änhliches)  
Der Aufrufer eines Services stellt {{iAllg}} in einem [Logic-Data-View-Controller-Service-Paradigma/Model|Model]] einen {{Container}} (wie {{zB}} ein Array, ein Objekt oder Änhliches)  
zur Verfügung, in dem der Service das Ergebnis ablegen kann, sobald es verfügbar ist.  
zur Verfügung, in dem der Service das Ergebnis ablegen kann, sobald es verfügbar ist.  


Ein Service bearbeitet eine Anfrage im Allgemeinen [[asynchron]]. Sollte die aktuelle Anfrage nicht erfolgreich bearbeitet werden können, so informiert der Service den Aufrufer mit Hilfe eines Fehler-[[Ereignis]]es über das zugehörige Problem.  
Ein Service bearbeitet eine Anfrage im Allgemeinen [[asynchron]]. Sollte die aktuelle Anfrage nicht erfolgreich bearbeitet werden können, so informiert der Service den Aufrufer mit Hilfe eines Fehler-[[Ereignis (OOP)|Ereignis]]es über das zugehörige Problem.  
Anderenfalls informiert es den Aufrufer, sobald das Ergebnis vorliegt, mit Hilfe eines anderen Ereignises über den erfolgreichen Abschluss der Anfragebearbeitung und schreibt das Ergebnis gegebenenfalls in den bereitgestellten Container.
Anderenfalls informiert es den Aufrufer, sobald das Ergebnis vorliegt, mit Hilfe eines anderen Ereignises über den erfolgreichen Abschluss der Anfragebearbeitung und schreibt das Ergebnis gegebenenfalls in den bereitgestellten Container.


Ein Service kann mehrere Anfragen hintereinander bearbeiten und dabei auch auf frühere Ergnisse (die er z.B. in privaten [[Zustandsvariable]]n
Ein Service kann mehrere Anfragen hintereinander bearbeiten und dabei auch auf frühere Ergnisse (die er {{zB}} in privaten [[Zustandsvariable]]n
abgelegt hat) zugreifen.  Dabei muss er allerdings i. Allg. dafür sorgen, dass keine zwei Anfrage zeitgleich bearbeitet werden. Sollte ein Aufrufer
abgelegt hat) zugreifen.  Dabei muss er allerdings {{iAllg}} dafür sorgen, dass keine zwei Anfrage zeitgleich bearbeitet werden. Sollte ein Aufrufer
mehrere Service-Anfragen parallel bearbeiten lassen wollen, so muss er dafür mehrere Services gleichzeitig verwenden.
mehrere Service-Anfragen parallel bearbeiten lassen wollen, so muss er dafür mehrere Services gleichzeitig verwenden.


=Anmerkungen=
==Anmerkungen==


[[Model-View-Controller-Service-Paradigma/Service|MVCS-Services]] und  
[[Model-View-Controller-Service-Paradigma/Service|MVCS-Services]] und  
[[View-Controller-Logic-Service-Data-Paradigma/Service|VCLSD-Service]] unterscheiden sich nicht.
[[Logic-Data-View-Controller-Service-Paradigma/Service|LDVCS-Service]] unterscheiden sich nicht.
Nur die Aufrufer unterscheiden sich: MVCS-Services werden von [[Model-View-Controller-Service-Paradigma/Controller|MVCS-Controllern]]
Nur die Aufrufer unterscheiden sich: MVCS-Services werden von [[Model-View-Controller-Service-Paradigma/Controller|MVCS-Controllern]]
aufgerufen und VCLSD-Service werden von [[View-Controller-Logic-Service-Data-Paradigma/Logic|VCLSD-Logik-Modulen]] aufgerufen.
aufgerufen und VCLSD-Service werden von [[Logic-Data-View-Controller-Service-Paradigma/Logic|LDVCS-Logik-Modulen]] aufgerufen.


In MVC-Anwendungen übernehmen i. Allg. [[Model-View-Controller-Paradigma/Model|MVC-Modelle]] die Kommunikation mit der Außenwelt.
In MVC-Anwendungen übernehmen {{iAllg}} [[Model-View-Controller-Paradigma/Model|MVC-Modelle]] die Kommunikation mit der Außenwelt.
Es ist auch denkbar, dass [[Model-View-Controller-Paradigma/Controller|MVC-Controller]] dese Aufgabe übernehmen.
Es ist auch denkbar, dass [[Model-View-Controller-Paradigma/Controller|MVC-Controller]] dese Aufgabe übernehmen.


=Quellen=
==Quellen==


*[[Kowarschick, W.: Multimedia-Programmierung]]
#{{Quelle|Kowarschick, W.: Multimedia-Programmierung}}
*[[Berkovitz, Joe (2006): An architectural blueprint for Flex applications]]
#{{Quelle|Berkovitz (2006)}}


=Siehe auch=
==Siehe auch==
* [[Model-View-Controller-Paradigma/Model|Model (MVC)]]
* [[Model-View-Controller-Paradigma/Model|Model (MVC)]]
* [[Model-View-Controller-Paradigma/Controller|Controller (MVC)]]
* [[Model-View-Controller-Paradigma/Controller|Controller (MVC)]]
* [[Model-View-Controller-Service-Paradigma/Service|Service (MVCS)]]


[[Kategorie:MVC]]
[[Kategorie:MVC]]
[[Kategorie:Objektorientierte Programmierung]]
[[Kategorie:Glossar]]
[[Kategorie:Glossar]]

Aktuelle Version vom 31. Juli 2019, 19:00 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.

Der LDVCS-Prozess

Definition (Kowarschick (MMProg))

(LDVCS-)Services dienen zur Kommunikation einer Anwendung, die nach dem LDVCS-Paradigma realisert wurde, mit der Außenwelt, d.h. mit Dienste-Anbietern wie Web-Servern und Datenbanksystemen. Service-Dienste können i. Allg. nur von Logik-Modulen oder anderen Services angefordert werden.

Eigenschaften eines Service-Objektes

Der Aufrufer eines Services stellt i. Allg. in einem [Logic-Data-View-Controller-Service-Paradigma/Model|Model]] einen Container (wie z. B. ein Array, ein Objekt oder Änhliches) zur Verfügung, in dem der Service das Ergebnis ablegen kann, sobald es verfügbar ist.

Ein Service bearbeitet eine Anfrage im Allgemeinen asynchron. Sollte die aktuelle Anfrage nicht erfolgreich bearbeitet werden können, so informiert der Service den Aufrufer mit Hilfe eines Fehler-Ereignises über das zugehörige Problem. Anderenfalls informiert es den Aufrufer, sobald das Ergebnis vorliegt, mit Hilfe eines anderen Ereignises über den erfolgreichen Abschluss der Anfragebearbeitung und schreibt das Ergebnis gegebenenfalls in den bereitgestellten Container.

Ein Service kann mehrere Anfragen hintereinander bearbeiten und dabei auch auf frühere Ergnisse (die er z. B. in privaten Zustandsvariablen abgelegt hat) zugreifen. Dabei muss er allerdings i. Allg. dafür sorgen, dass keine zwei Anfrage zeitgleich bearbeitet werden. Sollte ein Aufrufer mehrere Service-Anfragen parallel bearbeiten lassen wollen, so muss er dafür mehrere Services gleichzeitig verwenden.

Anmerkungen

MVCS-Services und LDVCS-Service unterscheiden sich nicht. Nur die Aufrufer unterscheiden sich: MVCS-Services werden von MVCS-Controllern aufgerufen und VCLSD-Service werden von LDVCS-Logik-Modulen aufgerufen.

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

Quellen

  1. Kowarschick (MMProg): Wolfgang Kowarschick; Vorlesung „Multimedia-Programmierung“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2018; Quellengüte: 3 (Vorlesung)
  2. Berkovitz (2006): Joe Berkovitz; An architectural blueprint for Flex applications; https://web.archive.org/web/20070105004310/http://www.adobe.com:80/devnet/flex/articles/blueprint.html; 2006; Quellengüte: 2 (Web)

Siehe auch