Frage von mrinternator, 31

Ist es sinnvoll die Benutzerschnittstelle und die Datenhaltung zu trennen?

Warum ist es sinnvoll die Benutzerschnittstelle und die Datenhaltung z.B. in Java strikt zu trennen?

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von Mikkey, 27

Der Sinn liegt darin dass man

- die Entwicklung auf verschiedene Personen verteilen kann

- bei einer Änderung der Datenhaltung (z.B. weil man eine Datenbank statt Dateien verwendet), nur einen klar umrissenen Bereich des Programms ändern muss. Analog gilt dies bei einer Änderung der Bedienoberfläche.

- relativ einfach die Datenhaltung und die Bedienung auf verschiedenen Rechnern betreiben kann

- beide Teile getrennt testen kann

Kommentar von mrinternator ,

Danke für die schnelle Antwort, du hast mir echt weitergeholfen :)

Antwort
von Fregrin, 25

Was du fragst ist eigentlich: "macht eine Model View Controller Sinn oder nicht?"

Und ja es macht durchaus Sinn unter https://de.wikipedia.org/wiki/Model_View_Controller kannst du mehr dazu lesen. Hinsichtlich Erweiterbarkeit, Testbarkeit und Wartbarkeit macht das durchaus Sinn.

Kommentar von Mikkey ,

Was du fragst ist eigentlich..

Nein, fragt er nicht. MVC ist nur ein Beispiel für eine solche Trennung. Die Trennung von Datenhaltung und Benutzerschnittstelle kann man auf ganz unterschiedliche Arten gestalten.

Kommentar von mrinternator ,

Danke für eure Antworten :)

Antwort
von EightSix, 24

Es ergibt sich allein aus den Umständen dass Java eine OOP Sprache ist und dort das Single Responsibility Prinzip gilt. Eine Klasse darf nicht für die UI und Datenverarbeitung zuständig sein.

Ansätze (Pattern/Muster) dazu gibt es verschiedene.

Kommentar von Mikkey ,

Mit anderen Worten: Das ist so, weil es so sein muss?

Kommentar von EightSix ,

Nein, ich habe nur auf das grundlegendste Prinzip hingewiesen das dem ganzen zu Grunde liegt und auf alle Klassen (nicht nur dem DAL) umgelegt werden kann. Informiert man sich über selbiges, stößt man früher oder später auf die von dir beschriebenen Eigenschaften.

Keine passende Antwort gefunden?

Fragen Sie die Community