Aufgaben-Python/courses/rust/11_iteratoren_und_closures
Alex Mueller 2571cb8847 feat(ux): responsive kurs-sidebar und kapitel-drawer für alle 13 kurse & web-ide
- Dynamic Sidebar mit window.COURSES_MANIFEST für 13 Kurse (216 Kapitel)
- Kurswechsler Dropdown mit Direktnavigation
- Fortschrittsanzeige mit Solved-Checkmarks (✓) aus localStorage
- Responsive Off-Canvas Drawer mit Floating Action Button (☰ Kapitel) & Backdrop auf Mobile/Tablets
- Web-IDE Topbar Drawer-Button (☰ Kapitel) für unterbrechungsfreien Vollbild-Editor
- Saubere Bereinigung redundanter statischer Legacy-Sidebars
2026-09-12 13:49:46 +02:00
..
aufgabe.rs IHK AP1 & AP2 (FISI) Crashkurse: Vollständige Lernfeld-Module (LF 1-12), 150 IHK-Prüfungsfragen, interaktive Prüfungs-Engine und Multi-Sprachen-Erweiterung (PDFs excluded) 2026-09-10 07:43:39 +02:00
index.html feat(ux): responsive kurs-sidebar und kapitel-drawer für alle 13 kurse & web-ide 2026-09-12 13:49:46 +02:00
musterloesung.rs IHK AP1 & AP2 (FISI) Crashkurse: Vollständige Lernfeld-Module (LF 1-12), 150 IHK-Prüfungsfragen, interaktive Prüfungs-Engine und Multi-Sprachen-Erweiterung (PDFs excluded) 2026-09-10 07:43:39 +02:00
README.md IHK AP1 & AP2 (FISI) Crashkurse: Vollständige Lernfeld-Module (LF 1-12), 150 IHK-Prüfungsfragen, interaktive Prüfungs-Engine und Multi-Sprachen-Erweiterung (PDFs excluded) 2026-09-10 07:43:39 +02:00
test_aufgabe.rs IHK AP1 & AP2 (FISI) Crashkurse: Vollständige Lernfeld-Module (LF 1-12), 150 IHK-Prüfungsfragen, interaktive Prüfungs-Engine und Multi-Sprachen-Erweiterung (PDFs excluded) 2026-09-10 07:43:39 +02:00

Rust 11: Iteratoren & Closures

Tauche ein in die funktionale Welt von Rust: Closures, Environment Capturing und Zero-Cost Iterator-Pipelines.


🎯 Lernziele

  1. Closures: Syntax |args| body und Environment-Capturing via Fn, FnMut und FnOnce.
  2. Move-Semantik: Variablen-Besitz in Closures mit dem Schlüsselwort move übertragen.
  3. Eigene Iteratoren: Den Iterator-Trait mit type Item und fn next(&mut self) implementieren.
  4. Adapter-Chaining: .map(), .filter(), .fold(), .filter_map(), .zip(), .take() effizient verketten.
  5. Zero-Cost Abstraction: Verstehen, warum funktionale Pipelines in Rust genauso schnell wie handgeschriebene for-Loops kompilieren.

💡 Schlüsselkonzepte

1. Custom Iterator

pub struct Fibonacci {
    curr: u64,
    next: u64,
}

impl Iterator for Fibonacci {
    type Item = u64;

    fn next(&mut self) -> Option<Self::Item> {
        let current = self.curr;
        self.curr = self.next;
        self.next = current + self.next;
        Some(current)
    }
}

🧪 Tests ausführen

rustc --test test_aufgabe.rs && ./test_aufgabe