Widman | Funktionale Programmierung verstehen | Buch | 978-3-8362-9868-1 | sack.de

Buch, Deutsch, 187 Seiten, Format (B × H): 172 mm x 229 mm, Gewicht: 370 g

Reihe: Rheinwerk Computing

Widman

Funktionale Programmierung verstehen

Konzepte und Entwurfsmuster für guten, wartbaren und eleganten Code
1. Auflage 2024
ISBN: 978-3-8362-9868-1
Verlag: Rheinwerk Verlag GmbH

Konzepte und Entwurfsmuster für guten, wartbaren und eleganten Code

Buch, Deutsch, 187 Seiten, Format (B × H): 172 mm x 229 mm, Gewicht: 370 g

Reihe: Rheinwerk Computing

ISBN: 978-3-8362-9868-1
Verlag: Rheinwerk Verlag GmbH


Möchten Sie sauberen, wartbaren und eleganten Code schreiben? Dann lernen Sie das Paradigma der funktionalen Programmierung kennen! Tauchen Sie in eine neue Denkweise ein und schreiben Sie eleganten Code auf die funktionale Art. Code, der sich in Ihren Anwendungen nutzen lässt, auch wenn Sie objektorientiert erstellt sind. Es kommt nicht darauf an, in welcher Programmiersprache Sie schreiben. Die meisten Codebeispiele in diesem Buch sind in leicht verständlichem Scala formuliert und außerdem in Python übersetzt. Der Autor 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 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

Widman Funktionale Programmierung verstehen jetzt bestellen!

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


Widman, Jack
Jack Widman hat einen PhD in Mathematik, über 20 Jahre Erfahrung in der Softwareentwicklung und eine Leidenschaft für die Umgestaltung komplexer Codebasen mithilfe der funktionalen Programmierung.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.