Files
.idea
Writerside
cfg
images
topics
BS
EWI
OOAD
AgileDesign.md
DesignPatterns.md
DesignPrinciples.md
DesigningForMaintainability.md
ImplementingForMaintainability.md
IntroductionOOAD.md
Praktikum3_Diagramme.md
Praktikum4_Diagramme.md
SOLID-Principle.md
SoftwareProcesses.md
UML.md
UMLKlassenDiagramme.md
UMLSequenzDiagramme.md
UMLStateDiagramme.md
RA
c.list
in.tree
v.list
writerside.cfg
README.md
zusammenfassungen/Writerside/topics/OOAD/Praktikum4_Diagramme.md
David Schirrmeister 5654a06633 update
2024-06-17 10:30:56 +02:00

3.5 KiB

@startuml
class Subject <<abstract>>{
+ ~Subject()
+ attach(obersever: Observer*): void
+ detach(observer: Observer*): void
+ notify(): void
}

class Observer <<interface>>{
+ {abstract} update(): void
+ ~Observer()
}

class SystemBattery{
+ setBatteryLevel(data: int): void
+ getData(): int
- BatteryLevel: int
}

class BatteryApp{
+ BatteryApp(subject: SystemBattery&, name: string)
+ update(): void
- name: string
}

class BatteryLogger{
+ BatteryLogger(subject: SystemBattery&, name: string)
+ update(): void
- name: string
}

Subject <|-- SystemBattery 
Observer <|-- BatteryApp 
Observer <|-- BatteryLogger

SystemBattery "1" *- "*" BatteryApp: - subject: SystemBattery&
SystemBattery "1" *- "*" BatteryLogger: - subject: SystemBattery&
Subject "*" -o "*" Observer: - observers: list<Observer*>


@enduml