Model-View-Controller-Service-Paradigma/Controller: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Wechseln zu:Navigation, Suche
(Definition (nach Kowarschick (MMProg)))
Zeile 7: Zeile 7:
 
die ihrerseits Modell-Objekte manipulieren.
 
die ihrerseits Modell-Objekte manipulieren.
  
Häufig wird die [[Anwendungslogik]] nicht im [[Model-View-Controller-Service-Paradigma/Model|Modell]], sondern im Controller implementiert.  
+
Im Allgemeinen wird die [[Anwendungslogik]] im Controler unf nicht im [[Model-View-Controller-Service-Paradigma/Model|Modell]] implementiert.  
  
 
==Aufgaben eines Controllers==
 
==Aufgaben eines Controllers==
 
* Anforderungen, die vom Benutzer direkt oder mit Hilfe einer [[Model-View-Controller-Service-Paradigma/View|View]] an einen [[Model-View-Controller-Service-Paradigma/Controller|Controller]] weitergeleitet werden, werden von diesem aufbereitet und zur Bearbeitung an das [[Model-View-Controller-Service-Paradigma/Model|Modell]] und/oder geeignete [[Model-View-Controller-Service-Paradigma/Service|Services]] weitergereicht.
 
* Anforderungen, die vom Benutzer direkt oder mit Hilfe einer [[Model-View-Controller-Service-Paradigma/View|View]] an einen [[Model-View-Controller-Service-Paradigma/Controller|Controller]] weitergeleitet werden, werden von diesem aufbereitet und zur Bearbeitung an das [[Model-View-Controller-Service-Paradigma/Model|Modell]] und/oder geeignete [[Model-View-Controller-Service-Paradigma/Service|Services]] weitergereicht.
 
* Controller können auch Ereignisse verarbeiten, die nicht vom Benutzer, sondern von einem [[Model-View-Controller-Service-Paradigma/Model|Modell]] oder einem (meist anderen) Controller initiiert werden (wie z.B. ein das Ereignis „Spielzeit ist abgelaufen“).
 
* Controller können auch Ereignisse verarbeiten, die nicht vom Benutzer, sondern von einem [[Model-View-Controller-Service-Paradigma/Model|Modell]] oder einem (meist anderen) Controller initiiert werden (wie z.B. ein das Ereignis „Spielzeit ist abgelaufen“).
 
+
* Sofern es keine speiellen [[View-Controller-Logic-Service-Data-Logic-Paradigma/Logic|Logik-Module]] gibt, wird im Controller auch die Anwendungslogik realisiert (siehe [[View-Controller-Logic-Service-Data-Logic-Paradigma|VCLSD-Paradigma]]).
Andere Arten der Kommunikation führt ein Controller nicht aus.
 
  
 
=Beispiele=
 
=Beispiele=

Version vom 17. April 2011, 12:43 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.

gerahmt|rechts|Der MVCS-Prozess

1 Definition (nach Kowarschick (MMProg))

(MVCS-)Controller dienen zur Steuerung einer Anwendung, die nach den MVCS-Paradigma realisert wurde. Dazu manipuliert der Controller Modell-Objekte und/oder aktiviert Service-Objekte, die ihrerseits Modell-Objekte manipulieren.

Im Allgemeinen wird die Anwendungslogik im Controler unf nicht im Modell implementiert.

1.1 Aufgaben eines Controllers

  • Anforderungen, die vom Benutzer direkt oder mit Hilfe einer View an einen Controller weitergeleitet werden, werden von diesem aufbereitet und zur Bearbeitung an das Modell und/oder geeignete Services weitergereicht.
  • Controller können auch Ereignisse verarbeiten, die nicht vom Benutzer, sondern von einem Modell oder einem (meist anderen) Controller initiiert werden (wie z.B. ein das Ereignis „Spielzeit ist abgelaufen“).
  • Sofern es keine speiellen Logik-Module gibt, wird im Controller auch die Anwendungslogik realisiert (siehe VCLSD-Paradigma).

2 Beispiele

Tastatur-Controller fangen Tastatur-Ereignisse ab und ermitteln, welches Zeichen der Benutzer mit der gewählten Tastenkombination eingegeben hat. Dies kann, wenn die zugehörige Programmiersprache dies nicht sauber unterstützt, sehr aufwendig sein, da die Tastencodes nichts über die Zeichen aussagen, die auf der Tastatur aufgedruckt sind – die Zuordnung zwischen Tastencode und Tasteninhalt hängt vom gewählten Tastaturlayout ab. Das so ermittelte Zeichen kann dann weiterverarbeitet werden.

Device-Controller fangen die Ereignisse von bestimmten Devices, wie USB-Geräten, Infrarot-Steuerungen, Mäusen etc. ab und verarbeiten diese weiter.

Data-Input-Controller fangen die Daten, die ein Benutzer über eine View (wie z.B. ein HTML-Formular) eingibt, ab und verarbeiten diese weiter.

Etc. pp.

3 Quellen

4 Siehe auch