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

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Keine Bearbeitungszusammenfassung
(Weiterleitung nach Model-View-Controller-Paradigma/Controller erstellt)
 
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{MVC:Menü}}
#REDIRECT [[Model-View-Controller-Paradigma/Controller]]
[[Medium:MVCS-Prozess 01.png|gerahmt|rechts|Der MVCS-Prozess]]
=Definition (nach [[Kowarschick (MMProg)]])=
 
([[Model-View-Controller-Service-Paradigma|MVCS]]-)[[Model-View-Controller-Service-Paradigma/Controller|Controller]] dienen zur Steuerung einer [[Anwendung]], die nach den [[Model-View-Controller-Service-Paradigma|MVCS-Paradigma]] realisert wurde. Dazu manipuliert der Controller
[[Model-View-Controller-Service-Paradigma/Model|Modell]]-Objekte und/oder aktiviert [[Model-View-Controller-Service-Paradigma/Service|Service]]-Objekte,
die ihrerseits Modell-Objekte manipulieren.
 
Häufig wird die [[Anwendungslogik]] nicht im [[Model-View-Controller-Service-Paradigma/Model|Modell]], sondern im Controller implementiert.
 
==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.
* 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“).
 
Andere Arten der Kommunikation führt ein Controller nicht aus.
 
=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 [[Device]]s, 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.
 
=Quellen=
 
*[[Kowarschick, W.: Multimedia-Programmierung]]
*[[Berkovitz, Joe (2006): An architectural blueprint for Flex applications]]
 
=Siehe auch=
* [[Model-View-Controller-Paradigma/Controller|Controller (MVC)]]
* [[View-Controller-Logic-Service-Data-Paradigma/Controller|Controller (VCLSD)]]
 
[[Kategorie:MVC]]
[[Kategorie:Glossar]]

Aktuelle Version vom 15. Juli 2011, 12:39 Uhr