Einführung in die Funktionale Programmierung (einfach und praxisnah!)
Funktionale Programmierung ist ein Programmierparadigma, das in der modernen Softwareentwicklung eine wichtige Rolle spielt. Es ermöglicht uns, eleganten, zustandslosen Code zu schreiben, der im Vergleich zur klassisch imperativen Programmierung oft einfacher zu interpretieren, testen und parallelisieren ist. Funktionale Programmierung ist kein Ersatz für objektorientierte Programmierung, sondern eine wichtige Ergänzung.
In meinen Studentenzeiten habe ich funktionale Programmierung als Übungsleiter an der Universität unterrichtet. Als Softwareentwickler in der Industrie kommen mir die Konzepte aus der funktionalen Programmierung regelmäßig zugute.
In dieser Einführung erkläre ich anhand von praktischen Beispielen in Python (und Java), was funktionale Programmierung ausmacht, welche Vorteile sie hat, und wie man funktionale Programme in der Praxis schreibt.
Ich setze lediglich ein Grundverständnis imperativer Programmierung (Zuweisungen, Schleifen, usw.) voraus. Ich behandle insbesondere Seiteneffekte, Closures, Lambda-Funktionen und Funktionen höherer Ordnung: map, filter, reduce und curry. Als Bonus zeige ich, wie man mit Python List Comprehensions besonders schönen funktionalen Code schreiben kann.
Zum Abschluss gebe ich drei Übungsaufgaben:
1) anzahl_gerade (mittels reduce und filter)
2) curry
3) mein_filter (mittels reduce)
Schreib gerne einen Kommentar mit deiner Lösung! Am liebsten mit etwas Platz davor, damit es nicht gleich allen angezeigt wird.
▬ Über diesen Kanal ▬▬▬▬▬▬▬▬▬▬▬▬
Ich habe Informatik und Mathematik in Hamburg, Cambridge und Paris studiert und arbeite derzeit als Software Engineer bei Facebook in London. Auf diesem Kanal erzähle ich von meinen Erfahrungen und gebe Tipps rund um Studium und Karriere, vor allem im Informatikbereich. Jetzt kostenlos abonnieren: https://bit.ly/Niklas_Abo
▬ Mehr Videos ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hier erfährst du, wo man Praktika findet, die aufwärts von 4000 Euro monatlich zahlen:
►https://youtu.be/FZgjmFDPdPs
So sieht ein typischer Arbeitsalltag für mich aus:
► https://youtu.be/YaakNj9ap0U
Die wichtigsten Inhalte im Informatikstudium:
► https://youtu.be/O-DKi2Ju7s0
▬ Mein Equipment ▬▬▬▬▬▬▬▬▬▬▬▬▬
Tastatur:
►https://amzn.to/3dSHllc
Maus:
►https://amzn.to/31IglQq
Kamera:
►https://amzn.to/34us32Z
Mikrofon:
►https://amzn.to/3oAf48f
Audio-Recorder:
►https://amzn.to/34usElf
Beleuchtung:
►https://amzn.to/2HrC8oY
Unterstütze kostenlos meinen Kanal, indem du über diese Links bei Amazon bestellst!
▬ Lass uns Freunde sein! ▬▬▬▬▬▬▬▬▬▬
►Facebook: https://bit.ly/Niklas_FB
►XING: https://bit.ly/Niklas_XING
►LinkedIn: https://bit.ly/Niklas_LinkedIn
▬ Timestamps ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
0:00 - Intro
0:33 - Programmierparadigmen
2:18 - Gegenbeispiel: Seiteneffekte
4:37 - Sortieren in Python: funktional vs imperativ
5:58 - Vorzüge funktionaler Programmierung
8:09 - Funktionen höherer Ordnung
8:34 - Vorstellung des Anwendungsbeispiels
9:20 - Closures
12:28 - Map
14:09 - Lambda-Funktionen
16:30 - Currying
17:35 - Filter
18:41 - Reduce
20:10 - List Comprehensions
21:53 - Beispiele in Java
22:12 - Übungsaufgaben
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Die Folien in diesem Video habe ich mit excalidraw.com erstellt.
Quelle für das Bild von Haskell Curry: https://commons.wikimedia.org/wiki/File:HaskellBCurry.jpg
Видео Einführung in die Funktionale Programmierung (einfach und praxisnah!) канала Niklas Steenfatt
In meinen Studentenzeiten habe ich funktionale Programmierung als Übungsleiter an der Universität unterrichtet. Als Softwareentwickler in der Industrie kommen mir die Konzepte aus der funktionalen Programmierung regelmäßig zugute.
In dieser Einführung erkläre ich anhand von praktischen Beispielen in Python (und Java), was funktionale Programmierung ausmacht, welche Vorteile sie hat, und wie man funktionale Programme in der Praxis schreibt.
Ich setze lediglich ein Grundverständnis imperativer Programmierung (Zuweisungen, Schleifen, usw.) voraus. Ich behandle insbesondere Seiteneffekte, Closures, Lambda-Funktionen und Funktionen höherer Ordnung: map, filter, reduce und curry. Als Bonus zeige ich, wie man mit Python List Comprehensions besonders schönen funktionalen Code schreiben kann.
Zum Abschluss gebe ich drei Übungsaufgaben:
1) anzahl_gerade (mittels reduce und filter)
2) curry
3) mein_filter (mittels reduce)
Schreib gerne einen Kommentar mit deiner Lösung! Am liebsten mit etwas Platz davor, damit es nicht gleich allen angezeigt wird.
▬ Über diesen Kanal ▬▬▬▬▬▬▬▬▬▬▬▬
Ich habe Informatik und Mathematik in Hamburg, Cambridge und Paris studiert und arbeite derzeit als Software Engineer bei Facebook in London. Auf diesem Kanal erzähle ich von meinen Erfahrungen und gebe Tipps rund um Studium und Karriere, vor allem im Informatikbereich. Jetzt kostenlos abonnieren: https://bit.ly/Niklas_Abo
▬ Mehr Videos ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hier erfährst du, wo man Praktika findet, die aufwärts von 4000 Euro monatlich zahlen:
►https://youtu.be/FZgjmFDPdPs
So sieht ein typischer Arbeitsalltag für mich aus:
► https://youtu.be/YaakNj9ap0U
Die wichtigsten Inhalte im Informatikstudium:
► https://youtu.be/O-DKi2Ju7s0
▬ Mein Equipment ▬▬▬▬▬▬▬▬▬▬▬▬▬
Tastatur:
►https://amzn.to/3dSHllc
Maus:
►https://amzn.to/31IglQq
Kamera:
►https://amzn.to/34us32Z
Mikrofon:
►https://amzn.to/3oAf48f
Audio-Recorder:
►https://amzn.to/34usElf
Beleuchtung:
►https://amzn.to/2HrC8oY
Unterstütze kostenlos meinen Kanal, indem du über diese Links bei Amazon bestellst!
▬ Lass uns Freunde sein! ▬▬▬▬▬▬▬▬▬▬
►Facebook: https://bit.ly/Niklas_FB
►XING: https://bit.ly/Niklas_XING
►LinkedIn: https://bit.ly/Niklas_LinkedIn
▬ Timestamps ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
0:00 - Intro
0:33 - Programmierparadigmen
2:18 - Gegenbeispiel: Seiteneffekte
4:37 - Sortieren in Python: funktional vs imperativ
5:58 - Vorzüge funktionaler Programmierung
8:09 - Funktionen höherer Ordnung
8:34 - Vorstellung des Anwendungsbeispiels
9:20 - Closures
12:28 - Map
14:09 - Lambda-Funktionen
16:30 - Currying
17:35 - Filter
18:41 - Reduce
20:10 - List Comprehensions
21:53 - Beispiele in Java
22:12 - Übungsaufgaben
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Die Folien in diesem Video habe ich mit excalidraw.com erstellt.
Quelle für das Bild von Haskell Curry: https://commons.wikimedia.org/wiki/File:HaskellBCurry.jpg
Видео Einführung in die Funktionale Programmierung (einfach und praxisnah!) канала Niklas Steenfatt
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
Welches Betriebssystem fürs Informatikstudium? (Empfehlung eines Informatikers)Mathematisch Beweisen mit NULL VORKENNTNISSEN! (echt jetzt)Programmieren Lernen: Die 9 besten Projektideen4000 Euro MONATLICH im PRAKTIKUM?! (als Student)Ein Tag im Leben eines Data EngineersWie wird man Data Scientist?SOFTWAREENTWICKLER vs INVESTMENTBANKER: Wer lebt besser?Was ist Objektorientierte Programmierung?Mein Gehalt, Wirtschaftsinformatik und Donald Trump - Q&A (1000 Abonnenten Special)Produktiv und diszipliniert mit dieser GENIALEN MethodeProgrammieren Lernen: Die BESTE Methode (für Anfänger)Clubhouse: Was du über den neuen Hype wissen solltestDER HÄRTESTE STUDIENGANG DER WELTDUALES STUDIUM: Was du vorher wissen solltestDIESE LERNMETHODE HAT MEIN LEBEN VERÄNDERT (Lerntipps // Lerntechniken)Lebenslauf schreiben: 11 wichtige Tipps (mit Vorlage zum Download)Python Tutorial deutsch [1/24] - Dein erstes ProgrammSind unsere Daten sicher? (RSA einfach erklärt)Die Pandemie, von der niemand spricht