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

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Zeile 3: Zeile 3:
=Definition (nach [[Kowarschick (MMProg)]])=
=Definition (nach [[Kowarschick (MMProg)]])=


([[Model-View-Controller-Paradigma|MVC]]-)[[Model-View-Controller-Paradigma/Controller|Controller]] dienen zur Steuerung einer [[Anwendung]], die nach den [[Model-View-Controller-Paradigma|MVC-Paradigma]] realisert wurde. Dazum nimmt Eingaben aus verschiedensten Quellen entgegen (z.B. Sensor-Daten oder Daten, die ein Benutzer über eine beliebige Benutzer-Schnittstelle wie eine Tastatur oder eine Maus eingibt) und leitet diese bereinigt und normalisiert an ein [[Model-View-Controller-Paradigma/Model|Modell]] weiter.
([[Model-View-Controller-Paradigma|MVC]]-)[[Model-View-Controller-Paradigma/Controller|Controller]] dienen zur Steuerung einer [[Anwendung]], die nach den [[Model-View-Controller-Paradigma|MVC-Paradigma]] realisert wurde. Dazu nimmt ein Controller Eingaben aus verschiedensten Quellen entgegen (z.B. Sensor-Daten oder Daten, die ein Benutzer über eine beliebige Benutzer-Schnittstelle wie eine Tastatur oder eine Maus eingibt) und leitet diese bereinigt und normalisiert an ein [[Model-View-Controller-Paradigma/Model|Modell]] weiter.


Ein MVC-Controller kann weitere Aufgaben übernehmen:
Ein MVC-Controller kann weitere Aufgaben übernehmen:

Version vom 15. Mai 2011, 17:04 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 MVC-Prozess

Definition (nach Kowarschick (MMProg))

(MVC-)Controller dienen zur Steuerung einer Anwendung, die nach den MVC-Paradigma realisert wurde. Dazu nimmt ein Controller Eingaben aus verschiedensten Quellen entgegen (z.B. Sensor-Daten oder Daten, die ein Benutzer über eine beliebige Benutzer-Schnittstelle wie eine Tastatur oder eine Maus eingibt) und leitet diese bereinigt und normalisiert an ein Modell weiter.

Ein MVC-Controller kann weitere Aufgaben übernehmen:

  • Umsetzung der Komponentenlogik
  • Verarbeitung von Systemsignalen, wie z.B. einer Systemuhr (z.B. „Spielzeit ist abgelaufen“)
  • Kommunikation mit externen Datenquellen (zum Zweck da Datensynchronisation)

Anmerkungen

Man beachte, dass sich Controller von MVC-Anwendungen und Controller von MVCS-Anwendungen nur in einer Hinsicht unterscheiden: MVC-Controller könnten für die Kommunikation mit der Außenwelt zuständig sein, allerdings werden dafür normalerweise Modelle eingesetzt. MVCS-Modelle sind dagegen nie für die Kommunikation mit der Außenwelt zuständig. Diese Aufgabe übernehmen MVCS-Service-Module.

Controller von VCLSD-Anwendungen sind werde für die Lommunikation mit der Außenwelt noch für die Komponentenlogik zuständig. Für diese Aufgaben gibt es VCLSD-Service-Module bzw. VCLSD-Logic-Module.

Beispiele

Tastatur-Controller fangen Tastatur-Ereignisse ab und ermitteln, welches Zeichen der Benutzer mit der gewählten Tastenkombination eingegeben hat. Das so ermittelte Zeichen kann dann weiterverarbeitet werden. Die Ermittelung des vom Benutzre eingegebenen Zeichens kann, wenn die zugehörige Programmiersprache dies nicht sauber unterstützt (wie z.B. ActionScript 3), 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.

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.

Quellen

Siehe auch