mirror of
https://github.com/theoleuthardt/hwr-notes.git
synced 2026-06-06 01:01:08 +00:00
docs: add obsidian hwr docs
This commit is contained in:
parent
b2636f4b92
commit
850aa3455d
245 changed files with 30757 additions and 0 deletions
46
Studienarbeit II/presentation_notes.md
Normal file
46
Studienarbeit II/presentation_notes.md
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
# Vortragsnotizen:
|
||||
|
||||
## 1. Status Quo (auch Randbedingungen)
|
||||
### Technologien
|
||||
- Golang als Programmiersprache (unverändert)
|
||||
- Goland als IDE (in Studienprojekt I)
|
||||
- VSCode (Editor mit Extension wegen besserer WSL Kompatibität)
|
||||
- Fyne als Frontend-Go-Library (unverändert)
|
||||
- Überlegung: Frontend-Framework als Frontend mit REST-API Kommunikation (React, Angular, Vue)
|
||||
- mehr Aufwand der nur die Inconvinience von Fyne lösen würde
|
||||
- Probleme mit Wails für Web-Framework-Desktop Apps
|
||||
- somit mehr Aufwand als funktionale Veränderungen
|
||||
- deshalb bei Fyne bleiben mit Kommunikation über Signal Channel
|
||||
|
||||
- TCP/IP als Protokoll weiterhin
|
||||
- Testing: Zwei Szenarien:
|
||||
- Zwei Computer (inconvinient)
|
||||
- Zwei Instanzen auf dem selben Computer oder zwei VMs haben sich eher bewährt wegen Zeiteffizienz
|
||||
|
||||
### Funktionalitäten
|
||||
- Bisher bauen wir auf einer Software auf mit:
|
||||
- Netzwerk: Lokale automatische TCP-Verbindungen
|
||||
- TCP-Paketversand automatisch in drei verschiedenen Verzögerungen
|
||||
- Pakete werden visualisiert über Balkendiagramme
|
||||
- Verbindungsstatus LED für den User
|
||||
- Dark Mode für Barriefreiheit, wie reduzierte Augenbelastung und bessere Lesbarkeit
|
||||
- Fenster kann im Vollbild genutzt werden mit automatischer Skalierung der UI-Elemente
|
||||
- Cross-Platform kompatibel, Auslieferung für Windows, Linux und MacOS
|
||||
|
||||
## Frontend-Erweiterungen
|
||||
### Peer-Discovery
|
||||
- Vorher: Nutzer kann nicht sehen mit welchem anderen Peer er verbunden ist, nur dass er überhaupt verbunden ist oder nicht
|
||||
- Snapdrop UI nicht realisiert weil:
|
||||
- Fyne arbeitet mit statischen Layouts und nativen Widgets
|
||||
- Radar-Zeichnung im Canvas zu komplex zur Erhaltung der Wartbarkeit des Code
|
||||
- Stattdessen Stärke von Fyne: Grid-Layout
|
||||
- Für Snapdrop Frontend-Austausch durch Web-Framework nötig leider (besser lösbar darin)
|
||||
|
||||
- **Button Grid** für verfügbare Instanzen, blau/weiß oder blau/schwarz für hohen kontrast
|
||||
- Grid wird vom Backend alle 100ms aktualisiert
|
||||
- **Responsiveness im Button Grid Container** :
|
||||
- Schmales Fenster: Nur zwei Buttons nebeneinander
|
||||
- Breites Fenster: Vier Buttons nebeneinander,
|
||||
- Vorher: User klickt auf Button -> verbindet sich -> kann nur disconnecten indem er das Programm schließt
|
||||
- Disconnect Button im verbunden Zustand
|
||||
- Keine Peers werden angezeigt, weil die aktuelle Instanz schon verbunden ist
|
||||
Loading…
Add table
Add a link
Reference in a new issue