Hello, world!
Will heißen, Tach zusammen und ich freue mich nach relativ langer Abstinenz mal wieder einen Abstecher ins ehrwürdige java-forum machen zu können.
Da ich, im Rahmen meiner Diplomarbeit, momentan ein Art Grundsatzdiskussion mit meinem betreuenden Prof führe, wollte ich mir mal einige Meinungen Dritter zum betreffenden Thema einholen. Thema der Diskussion ist meine Interpretation des MVC. Dazu kurz einige Informationen zum Aufbau meiner Software:
Ziel der Software ist eine so genannte Hardware-in-the-Loop- oder Restbussimulation. Ich habe also ein elektronisches Steuergerät, das über einen Bus mit anderen Teilnehmern kommuniziert. Das Verhalten dieser anderen Teilnehmer habe ich also in Software realisiert und über besagten Bus mit der zu testenden Hardware verbunden. So weit, so gut.
Um auf das Verhalten der simulierten Hardware einwirken; und die Reaktionen der angeschlossenen Hardware graphisch darstellen zu können, habe ich die Software um eine GUI erweitert. Diese habe ich – zumindest nach meiner Meinung – nach dem Vorbild des MVC realisiert.
Der Viewer ist eine in Swing realisierte Oberfläche, der Controller vermittelt zwischen diesem und dem Model. Und genau dieses Model ist der Aufhänger der besagten Diskussion.
Als Model, das ja klassischerweise zur reinen Datenhaltung (z.B. in Form einer Datenbank) dient, fungiert in meinem Fall die komplette Restbussimulation. Somit ist es eben kein reiner Datencontainer, sondern eine komplexes Gebilde mit einer gewissen Eigendynamik, bedingt durch die Interaktionen zwischen den verschiedenen Busteilnehmern. Da ich jedoch nicht die Interaktionen selbst, sondern lediglich die Zustände und internen Daten der Steuergeräte darstellen will, halte ich es durchaus für möglich die Gesamtheit diese Zustände und Daten als – zugegeben sehr abstraktes – Datenmodell zu betrachten.
Mein Prof hält diesen Ansatz „für eine sehr freie Interpretation des MVC-Modells“, da ein Datenmodell „eigentlich immer eine Beschreibung von Daten und nicht von Abläufen“ ist.
Ich vertrete hingegen die Meinung, dass die Abbildung dieser Abläufe innerhalb des Modells in keine Weise der Definition des MVC widerspricht. Grundlage für die Darstellung sind ja ausdrücklich nicht die Abläufe, sondern lediglich die Daten und Zustände der einzelnen Geräte. Dass die Logik jedes einzelnen Steuergerätes in diesem selbst realisiert; und somit Teil der Anwendung ist, halte ich im Sinne des OO-Gedanken für unerlässlich.
Da ich weder Aussagen gefunden habe, die diese Ansicht konkret unterstützen, noch solche die ihr strikt widersprechen, bitte ich Euch nun um Eure Einschätzung. Gerne nehme ich auch Verweise auf entsprechende Literatur entgegen.
Vielen Dank für Eure Hilfe!
Mit freundlichen Grüßen
mischer
Will heißen, Tach zusammen und ich freue mich nach relativ langer Abstinenz mal wieder einen Abstecher ins ehrwürdige java-forum machen zu können.
Da ich, im Rahmen meiner Diplomarbeit, momentan ein Art Grundsatzdiskussion mit meinem betreuenden Prof führe, wollte ich mir mal einige Meinungen Dritter zum betreffenden Thema einholen. Thema der Diskussion ist meine Interpretation des MVC. Dazu kurz einige Informationen zum Aufbau meiner Software:
Ziel der Software ist eine so genannte Hardware-in-the-Loop- oder Restbussimulation. Ich habe also ein elektronisches Steuergerät, das über einen Bus mit anderen Teilnehmern kommuniziert. Das Verhalten dieser anderen Teilnehmer habe ich also in Software realisiert und über besagten Bus mit der zu testenden Hardware verbunden. So weit, so gut.
Um auf das Verhalten der simulierten Hardware einwirken; und die Reaktionen der angeschlossenen Hardware graphisch darstellen zu können, habe ich die Software um eine GUI erweitert. Diese habe ich – zumindest nach meiner Meinung – nach dem Vorbild des MVC realisiert.
Der Viewer ist eine in Swing realisierte Oberfläche, der Controller vermittelt zwischen diesem und dem Model. Und genau dieses Model ist der Aufhänger der besagten Diskussion.
Als Model, das ja klassischerweise zur reinen Datenhaltung (z.B. in Form einer Datenbank) dient, fungiert in meinem Fall die komplette Restbussimulation. Somit ist es eben kein reiner Datencontainer, sondern eine komplexes Gebilde mit einer gewissen Eigendynamik, bedingt durch die Interaktionen zwischen den verschiedenen Busteilnehmern. Da ich jedoch nicht die Interaktionen selbst, sondern lediglich die Zustände und internen Daten der Steuergeräte darstellen will, halte ich es durchaus für möglich die Gesamtheit diese Zustände und Daten als – zugegeben sehr abstraktes – Datenmodell zu betrachten.
Mein Prof hält diesen Ansatz „für eine sehr freie Interpretation des MVC-Modells“, da ein Datenmodell „eigentlich immer eine Beschreibung von Daten und nicht von Abläufen“ ist.
Ich vertrete hingegen die Meinung, dass die Abbildung dieser Abläufe innerhalb des Modells in keine Weise der Definition des MVC widerspricht. Grundlage für die Darstellung sind ja ausdrücklich nicht die Abläufe, sondern lediglich die Daten und Zustände der einzelnen Geräte. Dass die Logik jedes einzelnen Steuergerätes in diesem selbst realisiert; und somit Teil der Anwendung ist, halte ich im Sinne des OO-Gedanken für unerlässlich.
Da ich weder Aussagen gefunden habe, die diese Ansicht konkret unterstützen, noch solche die ihr strikt widersprechen, bitte ich Euch nun um Eure Einschätzung. Gerne nehme ich auch Verweise auf entsprechende Literatur entgegen.
Vielen Dank für Eure Hilfe!
Mit freundlichen Grüßen
mischer