E-Book, Deutsch, 187 Seiten
Reihe: Rheinwerk Computing
Widman Funktionale Programmierung verstehen
1. Auflage 2024
ISBN: 978-3-8362-9870-4
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Konzepte und Entwurfsmuster für guten Code
E-Book, Deutsch, 187 Seiten
Reihe: Rheinwerk Computing
ISBN: 978-3-8362-9870-4
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Lernen Sie das Paradigma der funktionalen Programmierung kennen und schreiben Sie damit eleganten, wartbaren Code! Tauchen Sie in eine neue Welt ein, denken und coden Sie auf die funktionale Art . Die meisten Codebeispiele in diesem Buch sind in leicht verständlichem Scala formuliert und außerdem in Python übersetzt. Der Autor Jack Widman geht außerdem auf sprachabhängige Aspekte ein und zeigt dazu auch Codebeispiele in Java, JavaScript und C#. Für Python-Liebhaber gibt es in der deutschen Ausgabe ein exklusives Special mit Python-Codebeispielen und zusätzlichen Tipps, um das Buch ganz im „Python-Modus“ lesen zu können.
Aus dem Inhalt:
- Die Denkweise kennenlernen
- Ein paar einfache mathematische Grundlagen
- Entwurfsmuster
- Datenstrukturen
- Unveränderlichkeit
- Nebenläufigkeit
- Kombination mit OOP
- Besonderheiten verschiedener Programmiersprachen
- Python-Special
Autoren/Hrsg.
Weitere Infos & Material
Vorwort ... 9
1. Was ist funktionale Programmierung? ... 11
1.1 ... Unveränderlichkeit ... 13
1.2 ... Referenzielle Transparenz ... 16
1.3 ... Funktionen höherer Ordnung ... 18
1.4 ... Lazy Evaluation ... 19
1.5 ... Funktionale Denkweise ... 21
1.6 ... Die Vorteile der funktionalen Programmierung ... 22
1.7 ... Fazit ... 26
2. Mathematische Grundlagen ... 27
2.1 ... Mengenlehre ... 27
2.2 ... Grundlagen der Informatik ... 32
2.3 ... Fazit ... 34
3. Kategorientheorie und Entwurfsmuster ... 35
3.1 ... Kategorientheorie und Funktionsmuster ... 37
3.2 ... Funktionsmuster ... 51
3.3 ... Fazit ... 60
4. Funktionale Datenstrukturen ... 61
4.1 ... Die Option-Datenstruktur ... 62
4.2 ... Die Try-Datenstruktur ... 67
4.3 ... Die Either-Datenstruktur ... 68
4.4 ... Funktionen höherer Ordnung ... 70
4.5 ... Monaden und Scala-Abstraktionen ... 72
4.6 ... Traditionelle Datenstrukturen ... 74
4.7 ... Fazit ... 75
5. Unveränderlichkeit im Detail ... 77
5.1 ... Veränderliche und unveränderliche Variablen ... 77
5.2 ... Rekursion ... 78
5.3 ... Endrekursion ... 86
5.4 ... Weitere Beispiele für die Leistungsfähigkeit der fold-Funktion in Scala ... 91
5.5 ... Verbindung zwischen »fold« und Monoiden ... 92
5.6 ... Vertiefende Informationen zu Funktionen höherer Ordnung ... 96
5.7 ... Fazit ... 101
6. Nebenläufigkeit ... 103
6.1 ... Streams ... 107
6.2 ... Akka-Streams ... 108
6.3 ... Weitere Informationen zu Streams ... 111
6.4 ... FS2: funktionale Streams für Scala ... 112
6.5 ... Fazit ... 114
7. Wie geht es weiter? ... 115
7.1 ... Den reinen Weg einschlagen ... 115
7.2 ... Fazit ... 128
Anhang ... 129
A ... Scala ... 129
B ... Python-Special ... 151
Index ... 183




