- Einführung
- Definition von Lambda-Ausdrücken
- Historischer Hintergrund
- Unterschiede zu regulären Funktionen
- Syntax und Struktur
- Basis Syntax mit Beispielen
- Parameter und Rückgabewerte
- Anwendungsbeschränkungen
- Einfache Beispiele
- Lambda-Ausdrücke in Python
- Lambda-Ausdrücke in Java
- Lambda-Ausdrücke in C#
- Hands-On-Session
- Einfache Mathematische Operationen
- Textmanipulation
- Kleine Datenfilter-Aufgaben
- Fragen und Antworten
- Allgemeine Fragen
- Verständnisfragen zu den Beispielen
- Offene Diskussion für Unklarheiten
- Verschachtelte Lambda-Ausdrücke
- Grundkonzepte der Verschachtelung
- Beispiele und Anwendungsfälle
- Fallstricke und Komplexität
- Lambda-Ausdrücke mit höheren Funktionen
- map für Transformationen
- filter für Datenfilterung
- reduce für Akkumulation
- Anonyme Funktionen
- Definition und Beispiele
- Vergleich zu Lambda-Ausdrücken
- Einschränkungen und Anwendungsbereiche
- Lambda-Ausdrücke in funktionaler Programmierung
- Grundlagen funktionaler Programmierung
- Currying und Partial Application
- Lazy Evaluation und Monads
- Hands-On-Session
- Implementierung eigener map, filter, reduce Funktionen
- Verschachtelte Lambda-Anwendungen
- Anwendung in einem kleinen Projekt
- Lambda-Ausdrücke in der Datenanalyse
- Data Cleaning mit Lambda-Ausdrücken
- Aggregationsaufgaben
- Visualisierungsmöglichkeiten
- Lambda-Ausdrücke in Frameworks und Bibliotheken
- Lambda-Ausdrücke in LINQ (C#)
- Lambda-Ausdrücke in Spark (Scala, Python)
- Lambda-Ausdrücke in Pandas (Python)
- Best Practices
- Lesbarkeit vs. Kompaktheit
- Performance-Optimierung
- Wartbarkeit und Dokumentation
- Performance-Überlegungen
- Geschwindigkeitsvergleich: Lambda vs. reguläre Funktionen
- Speicherüberlegungen
- Benchmarking und Profiling
- Hands-On-Session
- Real-world Anwendungsfall in Datenanalyse
- Implementierung einer Mini-Anwendung mit verschiedenen Frameworks
- Code Review und Optimierung
LernzieleDas Hauptziel des Seminars ist die Vermittlung einer umfassenden Einführung in die Welt der Lambda-Ausdrücke. Es soll ein tiefergehendes Verständnis für Syntax, Struktur und Anwendungsbereiche geschaffen werden. Dabei liegt ein Fokus darauf, den Teilnehmern zu zeigen, wie sie Lambda-Ausdrücke in praktischen Programmiersituationen einsetzen können, von einfachen Skripten bis hin zu komplexen Anwendungen. Die Teilnehmer sollen lernen, höhere Funktionen wie map, filter und reduce in Kombination mit Lambda-Ausdrücken zu nutzen und damit ihre Code-Effizienz und -Qualität zu steigern.
Gleichzeitig werden Best Practices vermittelt, um sicherzustellen, dass die Verwendung von Lambda-Ausdrücken die Code-Lesbarkeit und -Wartbarkeit nicht negativ beeinflusst. Performance-Aspekte werden ebenfalls behandelt, um den Teilnehmern ein Gefühl dafür zu geben, wann der Einsatz von Lambda-Ausdrücken sinnvoll ist und wann nicht.
Zielgruppen- Programmierer und Softwareentwickler: Personen, die bereits Programmiererfahrung haben und ihre Kenntnisse vertiefen möchten, können durch das Verständnis von Lambda-Ausdrücken ihre Fähigkeiten erweitern und den Code, den sie schreiben, optimieren.
- Datenanalysten und Datenwissenschaftler: Diese Fachleute verwenden oft Programmiersprachen wie Python oder R für Datenanalyse und Modellbildung. Ein Verständnis von Lambda-Ausdrücken kann ihnen helfen, effizienter zu arbeiten.