Zum Inhalt springen

Terminal Entwicklungsumgebung und Projektstruktur beherrschen

Aus MOOCsWiki Staging
Version vom 22. Oktober 2026, 00:06 Uhr von Glanz (Diskussion | Beiträge) (AI MOOC Plugin fc27f4d134563ba9b780797335289108)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
aiMOOC-Siegel aiMOOC

Terminal Entwicklungsumgebung und Projektstruktur beherrschen

QR-Code


Einleitung

Du entwickelst ein überschaubares, lokal laufendes Lehrprojekt: eine Messdaten-App, die ausschließlich erfundene Prüfwerte eines ungefährlichen Lehrbauteils aus einer CSV-Datei liest und einen Textbericht schreibt. Dafür lernst du, dich im Terminal zu orientieren, Dateien gezielt abzulegen, ein Projekt von einem leeren Ordner aus aufzubauen und Python-Abhängigkeiten nachvollziehbar zu dokumentieren. Du brauchst keine Programmiererfahrung; Kenntnisse über Dateien und Maßeinheiten genügen. Empfohlen: 1. bis 2. Ausbildungsjahr.

Lernprodukt: Ein isoliertes Projektgerüst mit Laufzeitumgebung, verständlicher README-Datei, Datendatei, kleinem ausführbarem Skript und dokumentierten Abhängigkeiten. Am Schluss belegst du drei überprüfbare Kriterien: Start aus leerem Ordner, Schreibpfade erklären, Abhängigkeiten festhalten.

Vorwissen aktivieren (5 Minuten): Was unterscheidet einen Ordner von einer Datei? Was ist eine Dateiendung? Wieso sind 12,5 mm und 12,5 cm nicht derselbe Messwert? Vergleiche bei Bedarf die vorhandene MOOCwiki-Grundlage. Ihr genauer Seiteninhalt konnte bei der Recherche nicht ausgelesen werden; daher wird hier nichts daraus als geprüftes Zitat ausgegeben. Dieser Kurs setzt beim nächsten Handlungsschritt an.

Geltungsbereich: Ausschließlich lokale Simulation und synthetische Daten; keine Verbindung zu Maschinen, Sensoren, Prüfständen, Produktionsnetzwerken oder sicherheitsrelevanten Freigaben. Das unabhängige Bildungsangebot stellt weder eine offizielle Liebherr-Schulung noch eine IHK-Zertifizierung dar. Alle Kernaufgaben sind offline mit lokal vorhandenem Python und einem Texteditor möglich, ohne kostenpflichtiges KI-Konto.


Terminal, Editor und Projektwurzel verstehen


Werkzeugkette und Begriffe

Ein Terminal ist ein Programmfenster zur Texteingabe. Eine Shell interpretiert Befehle wie den Verzeichniswechsel. Der Editor verändert Quelltexte; der Interpreter führt Python-Code aus. Ein Arbeitsverzeichnis ist der Ordner, auf den sich relative Pfade normalerweise beziehen. Eine Projektwurzel ist das bewusst festgelegte oberste Verzeichnis deines Projekts. Terminal und Editor sind Werkzeuge; sie sind nicht selbst die Laufzeitumgebung.

Blinkender Cursor am Ende einer textbasierten Bash-Eingabeaufforderung
Animation einer Shell-Eingabeaufforderung

Medienhinweis: Der blinkende Cursor signalisiert Eingabebereitschaft; ohne Animation reicht die Beschreibung „Textfenster mit blinkendem Cursor“.


Sicher im Verzeichnis navigieren

Öffne ein Terminal in einem eigens für den Kurs gewählten Übungsordner, niemals mit Administratorrechten. Unter Linux oder macOS zeigt pwd den aktuellen Pfad und ls Dateien; unter Windows PowerShell nutzt du Get-Location und Get-ChildItem. cd wechselt den Ort. mkdir messdaten-lehrprojekt legt einen Projektordner an; danach cd messdaten-lehrprojekt. .. bezeichnet den Elternordner und . das aktuelle Verzeichnis. Bei Leerzeichen setzt du Pfade in Anführungszeichen. Nicht mit unbekannten Lösch-, Download- oder Administrationsbefehlen experimentieren.

Merksatz: Prüfe vor jedem schreibenden Befehl das Arbeitsverzeichnis, den Zielpfad und die erwartete Änderung. Wichtige Vorkontrolle: „Wo bin ich – was entsteht – wie nehme ich es zurück?“


Dateien und Schreibpfade planbar anlegen


Ordnerstruktur für die Lehr-App

Die geplante Projektwurzel erhält folgende Einträge. Lege sie zunächst mit einem Dateimanager oder Texteditor an; damit funktioniert die Aufgabe betriebssystemübergreifend.

messdaten-lehrprojekt/
  README.md
  requirements.txt
  .gitignore
  .venv/                 (erst nach dem Laufzeit-Schritt)
  daten/
    pruefwerte.csv
  src/
    messapp.py
  ausgabe/                (wird beim Start automatisch angelegt)

Funktionen: daten/ enthält nur unveränderliche Übungs-Eingaben. src/ enthält Quelltext. ausgabe/ enthält neue Berichte und darf neu erzeugt werden. .venv/ speichert die projektspezifische Python-Laufzeit und installierte Pakete; sie ist kein Datenablageort. README.md dokumentiert Ziel, Installation, Start und Grenzen. requirements.txt hält externe Python-Paketabhängigkeiten fest.

Beispiel eines hierarchischen Dateisystems mit ineinanderliegenden Verzeichnissen
Baumartige Struktur von Ordnern und Dateien

Alternative ohne Bild: Die Einrückung im oben stehenden Projektbaum zeigt, welche Dateien in welchen Ordnern liegen.


Absolute, relative und sichere Pfade

Ein absoluter Pfad beginnt an einer Systemwurzel oder an einem Laufwerk; ein relativer Pfad wird von einem Bezugspunkt aus interpretiert. daten/pruefwerte.csv ist nur dann relativ zur Projektwurzel auflösbar, wenn das Arbeitsverzeichnis stimmt. Robuster ist es, den Pfad zur Skriptdatei selbst als Ausgangspunkt zu verwenden. In Python liefert Path(__file__).resolve().parents[1] aus src/messapp.py die Projektwurzel, auch wenn du das Skript von einem anderen Ordner aus startest.

Schreibregel: Die App schreibt ausschließlich unter ausgabe/ und verändert niemals daten/, src/ oder fremde Nutzerordner. Nicht blind einen extern übergebenen Dateipfad als Schreibziel verwenden: Sonst kann ein fehlerhafter relativer Pfad ungewollt außerhalb des Projektverzeichnisses landen. Dies ist eine didaktische Begrenzung, noch keine vollständige Betriebssystem-Sandbox.


Datensatz und Einheit

Speichere als UTF-8-Datei unter daten/pruefwerte.csv genau diese synthetischen Beobachtungen; der Punkt ist hier das Dezimaltrennzeichen, damit das Python-CSV-Beispiel sie eindeutig liest:

teil_id,laenge_mm
LEHR-A,12.0
LEHR-B,12.4
LEHR-C,11.8

Die zulässige Übungsannahme lautet 11,5 bis 12,5 mm einschließlich; sie ist keine echte Produktspezifikation. Nutze keine realen Messwerte, personenbezogenen Daten oder Prüfmittelkennungen.


Laufzeitumgebung und lokale Werkzeuge einrichten


Python, Interpreter und Version

Python ist eine Programmiersprache; der Python-Interpreter führt die .py-Datei aus. Prüfe, ob Python lokal installiert ist: python --version, auf manchen Systemen python3 --version oder unter Windows py --version. Für dieses Beispiel ist Python ab Version 3.11 sinnvoll. Die Befehlsnamen unterscheiden sich nach System und Installationsweg. python -c "import sys; print(sys.executable)" zeigt den tatsächlich verwendeten Interpreter.

Screenshot der Python-IDLE-Oberfläche mit textbasierter Python-Eingabe
Python kann auch interaktiv Befehle ausführen

Ohne Bild: Der Interpreter verarbeitet Python-Anweisungen und gibt im interaktiven Modus ein Ergebnis zurück.


Eine lokale virtuelle Umgebung statt globaler Eingriffe

Starte innerhalb der Projektwurzel mit einem der zum System passenden Befehle:

  • Linux/macOS: python3 -m venv .venv
  • Windows: py -m venv .venv

Damit entsteht ein eigenes Interpreter- und Paketverzeichnis .venv. Es benutzt weiterhin eine vorhandene Basisinstallation, trennt aber normalerweise die Projektpakete von anderen Projekten. Eine virtuelle Umgebung ist keine vollständige Sicherheits-Sandbox: Ein ausgeführtes Programm kann weiterhin auf erlaubte Systemdateien und Netzwerke zugreifen. Zum aktiven Lernen genügt deshalb ein lokaler, nicht privilegierter Ordner mit geprüften Befehlen.

Aktivierung (optional): Linux/macOS source .venv/bin/activate; Windows PowerShell .venv\Scripts\Activate.ps1; Windows Eingabeaufforderung .venv\Scripts\activate.bat. Wenn eine Richtlinie das Aktivierungsskript sperrt, nicht unbedacht Schutzmechanismen lockern, sondern direkt .venv/bin/python beziehungsweise .venv\Scripts\python.exe verwenden. Prüfe mit python -c "import sys; print(sys.prefix, sys.base_prefix)": Sind die Pfade unterschiedlich, läuft die Sitzung normalerweise in einer virtuellen Umgebung. Aktivieren verändert vor allem die Befehlsauflösung in der aktuellen Shell; eine konkrete Interpreterpfadangabe funktioniert auch ohne Aktivierung.

Deutschsprachige ergänzende Videoeinführung „Python venv einfach erklärt“ (Programmieren mit Chris, 19.05.2024). Die Suchindex-Metadaten wurden gefunden, die Wiedergabe auf YouTube konnte bei der Recherche nicht direkt getestet werden. Lernalternative ohne Video: den vorigen Absatz durchführen und sys.prefix vergleichen.


Vom Editor zum kontrollierten Start

Öffne das Skript aus dem Projektordner im Editor deiner Wahl. Prüfe vor dem Ausführen immer, welche Datei du startest und welcher Interpreter sie ausführt. Starte später aus der Projektwurzel unter Linux/macOS mit .venv/bin/python src/messapp.py oder unter Windows mit .venv\Scripts\python.exe src\messapp.py. Nutze nur lokal eingegebene oder selbst geprüfte Befehle. Kein externes Konto ist erforderlich.


Paketverwaltung und nachvollziehbare Abhängigkeiten


Standardbibliothek und Fremdpakete trennen

Python bringt Standardbibliothek-Module wie csv und pathlib mit. Die Lehr-App benötigt keine Fremdpakete. Eine Paketverwaltung wie pip kann geprüfte zusätzliche Pakete in die aktivierte Umgebung installieren. Eine Abhängigkeit ist ein externes Softwarepaket, das die Anwendung für ihren Betrieb benötigt. Installationspaket und importiertes Python-Modul können unterschiedlich heißen.

Speichere für dieses Lernprodukt in requirements.txt folgende wahrheitsgemäße Zeile:

# Keine externen Python-Pakete erforderlich; csv und pathlib sind Standardbibliothek.

Dokumentiere zusätzlich im README die benötigte Python-Mindestversion. So sind auch null externe Abhängigkeiten explizit festgehalten. In weiterführenden Projekten lassen sich überprüfte direkte Pakete z. B. als paketname==1.2.3 pinnen; python -m pip freeze zeigt die installierten Pakete und Versionen. Achtung: Eine automatisch erzeugte Liste aller installierten Pakete ist nicht immer identisch mit den fachlich benötigten direkten Abhängigkeiten.


Installation und Nachweis

Prüfe innerhalb der Umgebung mit python -m pip --version den Ziel-Interpreter. Für ein späteres Projekt mit externen Paketen wäre python -m pip install -r requirements.txt üblich; dafür wären vertrauenswürdige Paketquellen, Internetzugang und vorherige Prüfung erforderlich. Im vorliegenden Offline-Projekt wird nichts heruntergeladen. Übertrage niemals Installationsbefehle aus unbekannten Chat-Nachrichten blind in die Shell. Schließe Version, Herkunft, Rechte und Netzwerkbedarf in die Planung ein.

Tonbeispiel einer Tastatur

Barrierefreie Textalternative: wiederholte kurze Tastenanschläge; der Ton ist freiwilliges Begleitmaterial und vermittelt keinen zusätzlichen Fachinhalt.


Sandbox als nächste Entwicklungsstufe

Isolation hat Stufen: Ein eigener Projektordner begrenzt die Ordnung, eine venv isoliert überwiegend Python-Pakete, eingeschränkte Benutzerrechte schützen zusätzlich, und eine korrekt konfigurierte Sandbox kann darüber hinaus Dateizugriffe oder Netzwerkzugriffe technisch begrenzen. Keine dieser Maßnahmen ist pauschal eine Sicherheitsfreigabe. Besonders KI-generierte Befehle und fremde Paketinstallationen sind als nicht vertrauenswürdig zu prüfen; erst verstehen, dann in einer geeigneten Testumgebung ausführen. Prinzip: die kleinsten nötigen Rechte vergeben und jede Änderung nachvollziehbar machen.

Die NIST-Publikation AI 600-1 (2024) beschreibt allgemeines Risikomanagement für generative KI, nicht speziell venv. Die MCP-Sicherheitsdokumentation (Fassung/URL 28.07.2026) beschäftigt sich mit Risiken von MCP-Implementierungen, nicht mit der Bedienung eines lokalen Terminals. Beides dient hier als Transferhintergrund, nicht als angeblicher Nachweis einer sicheren Python-Umgebung.


Praxisprojekt: Prüfwerte lokal auswerten und Fehler erklären


Geführtes Beispiel: Programm

Erstelle unter src/messapp.py diesen kleinen Quelltext. Er verwendet nur Standardbibliothek, liest die synthetischen CSV-Werte und erzeugt ausgabe/bericht.txt. Der Code hat keinerlei Verbindung zu Messhardware.

from pathlib import Path
import csv
BASIS = Path(__file__).resolve().parents[1]
EINGABE = BASIS / "daten" / "pruefwerte.csv"
ZIELORDNER = BASIS / "ausgabe"
ZIELDATEI = ZIELORDNER / "bericht.txt"
def pruefen():
    ergebnisse = []
    with EINGABE.open(encoding="utf-8", newline="") as datei:
        for zeile in csv.DictReader(datei):
            wert = float(zeile["laenge_mm"])
            status = "im Übungsbereich" if 11.5 <= wert <= 12.5 else "außerhalb"
            ergebnisse.append(f'{zeile["teil_id"]}: {wert:.1f} mm – {status}')
    return ergebnisse
if __name__ == "__main__":
    zeilen = pruefen()
    ZIELORDNER.mkdir(parents=True, exist_ok=True)
    ZIELDATEI.write_text("\n".join(zeilen) + "\n", encoding="utf-8")
    print(f"Lehrbericht: {ZIELDATEI}")

Erwartete Prüfung: Du erhältst drei Textzeilen mit den Werten 12.0, 12.4 und 11.8 mm; alle drei liegen innerhalb des festgelegten Übungsbereichs. Die Datendatei bleibt unverändert; nur ausgabe/bericht.txt wird erstellt beziehungsweise überschrieben. Verwende einen neuen Übungsordner, falls alte Ergebnisse nicht verändert werden sollen.


README und Wiederaufbau

Schreibe in README.md mit eigenen Worten: Zweck (synthetische Übungswerte), Voraussetzungen (Python 3.11 oder neuer, Texteditor), Aufbau (Ordnerbaum), Installation (lokale venv, keine Fremdpakete), Start (korrekter Interpreter und Skriptpfad), Eingaben und Ausgaben (beide exakte Pfade), Test (drei erwartete Zeilen), Grenzen (keine reale Prüfung). Ergänze den Hinweis: .venv/ ist erzeugbar und wird nicht verteilt. Trage in .gitignore die Zeilen .venv/ und ausgabe/ ein. Das Ausblenden in Git ist keine Zugriffssperre.

Test A – leerer Ordner: Lege einen frischen, leeren Testordner an und stelle Dateien anhand deiner README mit ausschließlich lokalen Mitteln wieder her. Erzeuge die venv neu und starte die App. Ergebnis: derselbe Bericht ohne manuelle Pfadkorrektur. Test B – Schreibpfad: Erläutere nachvollziehbar, warum der Zielpfad immer unter ausgabe/ liegt, auch wenn das Skript von einem anderen Arbeitsverzeichnis gestartet wird. Test C – Abhängigkeiten: Belege mit requirements.txt und dem README, warum kein Download nötig ist, und benenne die Interpreter-Mindestversion.


Fehlerfall systematisch begründen

Fehlerfall: Die App meldet FileNotFoundError für daten/pruefwerte.csv. Suche nicht zuerst nach einer neuen Bibliothek, sondern prüfe, ob die Datei am erwarteten Ort liegt, richtig heißt und die Groß-/Kleinschreibung passt. Wenn pruefwerte.csv versehentlich in src/ liegt, ist der Dateipfad falsch, nicht die Python-Laufzeit. Korrigiere die Struktur oder den fachlich begründeten Eingabepfad und erkläre, warum das die Fehlermeldung behebt.

Transferfall: Eine vorgeschlagene Erweiterung möchte für ein Diagramm eine zusätzliche Bibliothek global installieren und Berichte in den Benutzerordner schreiben. Entscheide selbst: vorerst keine Fremdbibliothek; falls später erforderlich, überprüfte Version nur in der venv verwenden; Berichte bewusst im Projektordner belassen. Begründe Ziel, Risiken und Rückbaubarkeit. Dies bleibt Simulation; niemals Freigaben, Maschinenbefehle oder echte Produktionsdaten verwenden.


Interaktive Aufgaben


Quiz: Wissen anwenden

Warum prüfst du vor dem Anlegen einer Datei den aktuellen Ordner? (Damit der Zielpfad und die Änderung vorhersehbar sind) (!Damit Python automatisch schneller läuft) (!Damit alle Ordner Administratorrechte erhalten) (!Damit sämtliche Dateien automatisch verschlüsselt werden)



Lernhinweis: Prüfe den Unterschied zwischen aktuellem Verzeichnis und absolutem Zielpfad.

Was ist die Projektwurzel? (Der vereinbarte oberste Ordner des zusammengehörigen Projekts) (!Der globale Paket-Cache des Computers) (!Die erste Zeile jedes Python-Skripts) (!Der Dateiname eines Interpreters)



Lernhinweis: Denke an den gemeinsamen Ausgangspunkt von daten, src und README.

Was bewirkt python -m venv .venv üblicherweise? (Eine projektspezifische Python-Umgebung wird angelegt) (!Die Betriebssystemrechte werden vollständig aufgehoben) (!Die Daten werden automatisch online gesichert) (!Eine vollständige Sicherheits-Sandbox wird eingerichtet)



Lernhinweis: Unterscheide Paketisolation von Dateisystem- und Netzwerkbeschränkungen.

Welche Datei gehört nach der Planung in den Eingabeordner? (pruefwerte.csv) (!bericht.txt) (!requirements.txt) (!messapp.py)



Lernhinweis: Die Quelldaten und die Berichte haben verschiedene Rollen.

Wozu dient Path mit __file__ im Lehrskript? (Zum Bestimmen der Projektwurzel relativ zum Skriptstandort) (!Zum Löschen alter fremder Benutzerdateien) (!Zum Herunterladen fehlender Bibliotheken) (!Zum Start einer Maschinenverbindung)



Lernhinweis: Der Bezugspunkt bleibt auch beim Wechsel des Arbeitsverzeichnisses stabil.

Warum enthält die requirements.txt hier keine Fremdpakete? (Weil csv und pathlib zur Python-Standardbibliothek gehören) (!Weil virtuelle Umgebungen niemals Pakete benötigen) (!Weil jedes Paket ohne Dokumentation nachgeladen wird) (!Weil Python keine Paketverwaltung kennt)



Lernhinweis: Zähle direkte externe Abhängigkeiten statt alle möglichen Bibliotheken.

Welcher Befehl hilft beim Feststellen der Interpreterversion? (python --version) (!mkdir --version) (!cd --version) (!ls --install)



Lernhinweis: Ein Versionskommando sollte sich auf das tatsächlich genutzte Laufzeitprogramm beziehen.

Was ist bei globaler Paketinstallation das Hauptproblem? (Sie kann andere Projekte oder die Systemumgebung beeinflussen) (!Sie speichert ausschließlich den Bericht im Projekt) (!Sie verhindert jede Netzwerkverbindung) (!Sie erstellt automatisch eine README)



Lernhinweis: Vergleiche den Geltungsbereich einer globalen Änderung mit einer lokalen Umgebung.

Welcher Fehler erklärt eine fehlende Eingabedatei am ehesten? (Die CSV liegt nicht unter dem erwarteten relativen Projektpfad) (!Die Datei enthält drei statt vier Datensätze) (!Der Cursor blinkt in der Shell) (!Das Projekt enthält keine Bilddatei)



Lernhinweis: Fehlermeldungen sollen anhand konkreter Pfade untersucht werden.

Wann ist das Lernprodukt nachvollziehbar wiederherstellbar? (Wenn Anleitung, Daten, Skript und Abhängigkeiten einen frischen Aufbau ermöglichen) (!Wenn nur ein Screenshot einer alten Ausführung existiert) (!Wenn ausschließlich der alte .venv Ordner kopiert wird) (!Wenn die Schritte nur im Kopf des Erstellers bekannt sind)



Lernhinweis: Eine andere Person soll die Umgebung ohne geheime Zusatzschritte rekonstruieren.



Memory: Begriffe und Bedeutungen

Ordne jeweils ein Fachwort seiner zutreffenden Erklärung zu.

Shell Programm, das Terminalbefehle interpretiert
Projektwurzel Oberster gemeinsamer Arbeitsordner eines Projekts
Interpreter Programm, das Python-Code ausführt
Paketverwaltung Werkzeug zur Installation und Verwaltung zusätzlicher Softwarepakete
README Anleitung zum Verständnis und Wiederaufbau des Projekts
Ausgabeordner Geplanter Speicherort für erzeugte Ergebnisdateien




Drag-and-Drop: Was gehört wohin?

Ordne jede Aufgabe dem passenden Ort oder Werkzeug zu.

Richtige Zuordnung Funktion im Lehrprojekt
daten/pruefwerte.csv Synthetische Eingabewerte aufbewahren
src/messapp.py Logik der Lehr-App verwalten
ausgabe/bericht.txt Errechnetes Ergebnis speichern
README.md Wiederaufbau und Grenzen erklären
requirements.txt Notwendige externe Pakete dokumentieren




Kreuzworträtsel: Fachsprache festigen

Terminal Textbasierter Zugang zu einer Befehlsshell
Ordner Zusammenfassung von Dateien im Dateisystem
Interpreter Programm zur Ausführung von Python-Anweisungen
Paket Installierbare Zusammenfassung zusätzlicher Software
Pfad Adresse zu einer Datei im Dateisystem
Sandbox Technisch begrenzter Ausführungsraum zum Testen




LearningApps: Weitere Zuordnungsübungen

Suche passende bestehende Übungen zu Terminal, Projektstruktur, Python und virtuellen Umgebungen. Suchergebnisse sind Fremdinhalte; prüfe sie vor der Verwendung.

Alternative ohne LearningApps: Ordne die fünf Aufgaben und fünf Orte aus der Drag-and-Drop-Tabelle auf Papier zu und erkläre zwei Entscheidungen.


Lückentext: Arbeitsablauf begründen

Ergänze die Begriffe des Projekts.
Der oberste Ordner eines zusammengehörigen Softwareprojekts heißt

.
Eine textbasierte Arbeitsoberfläche für Befehle nennt man

.
Python-Dateien werden von einem

ausgeführt.
Eine lokal angelegte isolierte Python-Paketumgebung heißt

.
Die synthetischen Prüfwerte liegen im Ordner

.
Die Anwendung schreibt ihren Bericht in den Ordner

.
Eine verständliche Projektanleitung heißt

.
Externe Installationsabhängigkeiten hält man in einer

fest.
Die Adresse zu einem Verzeichnis oder einer Datei heißt

.
Eine darüber hinaus technisch eingeschränkte Testumgebung nennt man

.



Offene Aufgaben


Leicht

  1. Dateisystem: Zeichne den Lehrprojekt-Baum mit daten, src, ausgabe, README und requirements und erläutere je einen Zweck.
  2. Terminal (Computer): Führe harmlose Orientierungsbefehle im Übungsordner aus und notiere Arbeitsverzeichnis vor und nach cd.
  3. Python (Programmiersprache): Ermittle ohne Netzverbindung Python-Version und Interpreterpfad und erkläre den Unterschied.
  4. CSV (Dateiformat): Erstelle ausschließlich die drei synthetischen Prüfwerte und überprüfe Trennzeichen und Einheit mm.


Standard

  1. Virtuelle Umgebung: Erzeuge eine lokale .venv und belege anhand von sys.prefix und sys.base_prefix die gewählte Laufzeit.
  2. Softwaredokumentation: Schreibe eine README, mit der eine zweite Person das Projekt aus leerem Ordner wiederaufbauen kann.
  3. Dateipfad: Starte das Skript aus zwei unterschiedlichen Arbeitsverzeichnissen und erkläre, warum dieselbe Ausgabedatei entsteht.
  4. Paketverwaltung: Begründe schriftlich die leere externe Abhängigkeitsliste und dokumentiere die erforderliche Python-Version.


Schwer

  1. Fehleranalyse: Verschiebe die synthetische CSV testweise in einen falschen Übungsordner, dokumentiere Fehlermeldung, Ursache und begründete Reparatur und stelle den Sollzustand wieder her.
  2. Reproduzierbarkeit: Übergib Quelltext, Eingangsdaten und README an eine andere Lernperson und protokolliere, welche Wiederaufbauschritte gelingen und welche unklar bleiben.
  3. Sandbox: Vergleiche Projektordner, venv und echte Sandbox in einer selbst erstellten Risikomatrix für Datei- und Netzwerkzugriffe.
  4. Softwarearchitektur: Plane eine optionale Diagrammfunktion, begründe eine überprüfte Paketversion und beschreibe, wie man sie ohne globale Installation und ohne Produktionsdaten testen würde.




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

  1. Projektstruktur: Erstelle in einem leeren Ordner ein vollständiges Lehrprojekt und zeige, welche Dateien absichtlich mitgeliefert und welche erzeugt werden.
  2. Laufzeitumgebung: Demonstriere mit einem konkreten Interpreterpfad, dass der Start in einer projektspezifischen Umgebung statt global erfolgt; erläutere verbleibende Risiken.
  3. Dateipfad: Beweise am Quelltext den Schreibort des Berichts und erkläre, warum ein anderer Shell-Startordner den Zielort nicht verschiebt.
  4. Abhängigkeit (Software): Begründe, warum requirements.txt hier keine Fremdpakete auflistet, und formuliere die Dokumentation einer zukünftigen überprüften Zusatzbibliothek.
  5. Fehlersuche: Analysiere einen FileNotFoundError einschließlich erwarteten Pfads, tatsächlichem Pfad, Ursache, Reparatur und erneutem Test.
  6. IT-Sicherheit: Begründe, warum venv keine vollwertige Sandbox ist, und welche zusätzlichen Rechtebegrenzungen bei untrusted Code relevant wären.
  7. Dokumentation: Bewerte eine fremde README an den drei Kriterien Wiederaufbau, Schreibpfad und Abhängigkeiten und formuliere zwei überprüfbare Verbesserungen.


Lernnachweis

Abgabe: Ein gezipptes oder lokal vorzeigbares, personenbezogenes-freies Projektgerüst mit src/messapp.py, daten/pruefwerte.csv, README.md, requirements.txt, .gitignore und einer vorführbaren neu erzeugten lokalen Umgebung. Die generierte .venv/ gehört üblicherweise nicht in die Abgabe.

Kriterium Beobachtbarer Nachweis Erfolgreich, wenn
Aus leerem Ordner starten Frischer Nachbau nach README und Bericht mit drei synthetischen Zeilen Keine verborgenen Dateivoraussetzungen oder bezahlten Dienste nötig
Schreibpfade erklären Zuordnung von Datenquelle, Skriptstandort und Ausgabe sowie ein zweiter Startordner Es wird ausschließlich innerhalb des vorgesehenen Projekt-Ausgabeordners geschrieben
Abhängigkeiten festhalten Python-Version, venv-Verfahren und requirements-Datei Jede externe Abhängigkeit wäre nachvollziehbar, derzeit sind es ausdrücklich keine
Fehler begründen Protokoll eines absichtlich falsch platzierten CSV-Dokuments Ursache wird von Symptom und Reparatur unterschieden
Schutzgrenzen Kurzer Vergleich von venv und Sandbox Keine fälschliche Gleichsetzung von Paketisolation und Systemsicherheit

Selbstkontrolle: Erkläre die drei Kernentscheidungen mündlich anhand deiner Dateien. Ein erfolgreicher Programmstart allein genügt nicht. Bei fehlendem Python darfst du die Schritte als schriftliche Offline-Simulation mit begründetem Soll-Ergebnis nachweisen; praktische Ausführung ist dann noch nicht bestätigt.


OER und Wikipedia

Stand der Quellenprüfung: 22.10.2026. Versionsangaben beziehen sich auf die jeweils genannten Dokumente; Onlineseiten können aktualisiert werden. Die Quellen sind Recherchehilfen und ersetzen keine betriebliche Freigabe.

Alternative ohne eingebettete Wikipedia: Die obigen Quellenlinks und die Textdefinitionen dieses Kurses reichen für sämtliche Aufgaben aus.


Geprüfte freie Medien und Rechte

Die folgenden Commons-Dateiseiten wurden mit Urheber- und Lizenzangaben abgeglichen. Beim Einbetten wird keine Datei neu erzeugt. Beschreibungen an jeder Stelle dienen zugleich als Alt- bzw. Textalternative; Lizenzangaben beziehen sich auf die jeweilige Dateiseite.

Datei Commons-Quellseite Urheberschaft Lizenz
File:Animated GNU Bash Unix Shell Prompt.gif Dateiseite und Vorschau Kxxvii, 2016 CC0 1.0
File:File Hierarchy.png Dateiseite und Vorschau Peter Flass, 2023 CC BY-SA 4.0
File:Python IDLE.png Dateiseite und Vorschau Bernardo Lansing, 2022 CC BY-SA 4.0
File:Typing - Model F 122 1984.ogg Dateiseite und Hörprobe Raymangold22, 2016 CC0 1.0

Video: Python venv einfach erklärt, Programmieren mit Chris, veröffentlicht am 19.05.2024; Suchindex und Angaben zum Inhalt sind nachweisbar, unmittelbare Wiedergabeprüfung war nicht möglich. Der Inhalt ist optional, keine Weiterverwendungslizenz wird behauptet. Bei gesperrtem Video den dokumentierten Offline-Ablauf verwenden.


Verknüpfte Lernbereiche


aiMOOC-Projekte



Schulfach+




aiMOOCs



aiMOOC Projekte









MOOCwiki · Deutsch

Nach dem Lernen ist vor dem Lernen

Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.

Zur MOOCwiki-Hauptseite

Mediathek

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...