• Keine Ergebnisse gefunden

Softwaretechnik 2015/2016

N/A
N/A
Protected

Academic year: 2021

Aktie "Softwaretechnik 2015/2016"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Softwaretechnik 2015/2016

HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME

PST | PROF. DR. WIRSING

PST Lehrstuhl

Prof. Dr. Matthias Hölzl

Joschka Rinke

(2)

2

Übung 7:

26.11.2015

Fragen

Besprechung Blatt06

AGENDA

(3)

Interaktionsdiagramme modellieren…

…die Interaktionen zwischen den Methoden einer Klasse

…die Interaktionen zwischen den Klassen eines Packages

…die Interaktionen zwischen mehreren Objekten

…das Verhalten eines Objekts

Aufgabe 1 – UML & Java

(4)

4

Diagramme zur Modellierung von dynamischen Verhalten:

Interaktionsdiagramme:

Kommunikation & Zusammenarbeit mehrerer Objekte Sequenzdiagramm, Kommunikationsdiagramm

Zustandsdiagramme:

Verhalten eines Objekts einer Klasse zur Laufzeit flach, hierarchisch, parallel

Aktivitätsdiagramme:

(evtl. parallele) Abläufe von Aktivitäten

Aufgabe 1 – UML & Java

(5)

Bei MVC steht…

…das M für Model und repräsentiert die Daten und Änderungen auf den Daten

…das M für Multiple und besagt, dass mehrere Objekte miteinander interagieren

…das C für Controller, der Interaktionen des Anwenders mit der View in Aktionen übersetzt

…das C für Control und suggeriert, dass Anwender die Kontrolle über das Modell haben und die View ändern können

Aufgabe 1 – UML & Java

(6)

6

Model-View-Controller (MVC):

Model: repräsentiert die Daten und Updates auf den Daten

View: Rendert den Inhalt des Models und muss upgedated werden, wenn sich das Model ändert

Controller: Übersetzt die Interaktionen des Anwenders mit der View in Aktionen die das Model ausführt

Aufgabe 1 – UML & Java

(7)

MVC in der Vorlesung:

klare Trennung zwischen View und Controller Controller und View als Observer,

die Change Notifications vom Modell erhalten,

d.h. sie müssten sich dort z.B. als Observer registrieren…

MVC in Java-Swing:

keine klare Trennung zwischen View und Controller mehr, es gibt eine Art ViewController (single User-Interface)

Java-Swing basiert also nur lose auf dem traditionellen MVC-Pattern

(In der VL wurde die Web-MVC Architektur als weitere Variante vorgestellt)

Aufgabe 1 – MVC & Java Swing

(8)

8

Aufgabe 1 – MVC & Java Swing

(9)

Möglicher Klassischer MVC Ansatz:

Vom FrameController-Objekt aus werden das Modell, die benötigten Controller und die Views instantiiert

Aufgabe 1 – MVC & Java Swing

(10)

10

Möglicher Klassischer MVC Ansatz:

Problem:

Alle Controller und alle Frames/Panels müssten Observer sein, die vom Modell über Änderungen upgedated werden.

Das ist in Swing nicht vorgesehen…

jetzt müsste noch das Observer-Interface implementiert werden

Aufgabe 1 – MVC & Java Swing

(11)

Vom Jframe-Objekt aus wird das Modell und evtl. benötigte JPanels instantiiert

Möglicher Java Swing Ansatz:

Aufgabe 1 – MVC & Java Swing

(12)

12

Möglicher Java Swing Ansatz:

In den Panels werden für die Buttons z.B. ActionListener geadded und die ActionEvents gehandled, das würde im klassischen MVC Ansatz in den Controllern geschehen.

Aufgabe 1 – MVC & Java Swing

Referenzen

ÄHNLICHE DOKUMENTE

Verwandte Arbeiten motivieren einen klaren Handlungsbedarf zur Analyse von Prozess- änderungen durch neue Methoden, auch wenn ihr Fokus allgemeiner [Ba04] oder detaill- ierter

Since we have a different view and granular- ity level than what we had in the fully distributed case, we can use the priority allocation mechanism to determine priorities for groups

• In Factories wird die Factory-Method meist als statisch angegeben, das ist aber nicht mehr möglich, wenn sie wie im Factory-Method Pattern als abstrakte

Kurzbeschreibung: Ein Content Manager (CM) entfernt Content aus der Mediathek, so dass alle externen Nutzer keinen Zugriff mehr auf den Content haben. Vorbedingung: Die

• Eine Klasse, die von mehreren Klassen erbt kann gleichnamige Attribute besitzen wodurch nicht immer eindeutig ist,.. welches Attribut wann

• Fake Object (drivers): enthalten funktionierende Implementierung, die aber so abgespeckt ist, dass sie im eigentlichen Programm nicht verwendet werden. Aufgabe 3

• Änderung eines Objekts verlangt Änderung eines anderen Objekts. • Objekt soll andere

„Analyse und Evaluation der Softwareentwicklung in Deutschland“ Eine Studie für das Bundesministerium für Bildung und Forschung durchge- führt von GfK Marktforschung