From 277cd1554128c475c484f4dd6923302cb87e6f3a Mon Sep 17 00:00:00 2001 From: Teena Steger Date: Tue, 21 Apr 2026 15:29:56 +0200 Subject: [PATCH] 06: Anleitung zu go modules --- web/06/labor/06_aufgaben.md | 2 +- web/06/labor/anleitung_extlib.md | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 web/06/labor/anleitung_extlib.md diff --git a/web/06/labor/06_aufgaben.md b/web/06/labor/06_aufgaben.md index c007bd7..dd6a465 100644 --- a/web/06/labor/06_aufgaben.md +++ b/web/06/labor/06_aufgaben.md @@ -69,5 +69,5 @@ Implementieren Sie ein Programm mit folgenden Funktionen: - Arbeiten Sie mit `slice` zur Verwaltung der Bücherliste. - Nutzen Sie Methoden zur Kapselung von Logik (z. B. `Add`, `MarkRead`, `Save`). - Behandeln Sie Fehler sinnvoll und benutzerfreundlich. -- Strukturieren Sie Ihr Projekt in mindestens zwei Dateien (`main.go`, `book.go`). +- Strukturieren Sie Ihr Projekt in mindestens zwei Dateien (`main.go`, `book.go`). Hierzu müssen Sie Module verwenden. Eine kurze Anleitung dazu finden Sie hier: [Abhängigkeiten mit go.mod](anleitung_extlib.md) diff --git a/web/06/labor/anleitung_extlib.md b/web/06/labor/anleitung_extlib.md new file mode 100644 index 0000000..066e4ea --- /dev/null +++ b/web/06/labor/anleitung_extlib.md @@ -0,0 +1,26 @@ +# Abhängigkeitsverwaltung mit `go.mod` + +## Hintergrund + +Externe Pakete, die im Code importiert werden, werden über eine `go.mod`‑Datei verwaltet. Diese Datei definiert das Modul und listet alle Abhängigkeiten auf. Sie gehört fest zum Projekt und wird im Quellcode‑Repository mitgeführt. + +## Anweisungen + +*Annahme*: Go-Programm ist bereits vorhanden und die Imports im Code sind gesetzt. Außerdem befinden Sie sich in dem Ordner mit dem Go-Programm. + +1. **Modul initialisieren (falls noch nicht geschehen)** +```bash +go mod init example.com/myapp +``` +Der Modulpfad entspricht in der Praxis meist der Repository‑Adresse, z. B. `github.com/mymodule`. Für einfache Beispiele genügt ein Platzhalter wie z.B. `example.com/myapp` + +2. **Abhängigkeiten auflösen und aufräumen** +```bash +go mod tidy +``` +Dadurch werden alle im Code verwendeten Imports heruntergeladen und ins `go.mod` eingetragen. Nicht mehr benötigte Pakete werden entfernt. + +3. **Programm starten** +```bash +go run . +``` \ No newline at end of file