Funktionale Programmierung lernen

Book description

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Lerne, wie ein/e funktionale/r Programmierer/in zu denken und Code zu schreiben. Mit diesem praktischen Leitfaden tauchen Softwareentwickler, die mit objektorientierter Programmierung vertraut sind, in die Kernkonzepte der funktionalen Programmierung ein und lernen, wie sie bei großen oder komplexen Softwareprojekten sowohl funktionale als auch OOP-Funktionen gemeinsam nutzen können.

Der Autor Jack Widman verwendet Beispiele aus Java, Python, C#, Scala und JavaScript, um dir eine neue Sichtweise zu vermitteln und dir Werkzeuge an die Hand zu geben, mit denen du die Komplexität in deiner Problemdomäne bewältigen kannst. Du wirst in der Lage sein, Code zu schreiben, der einfacher, wiederverwendbar, leichter zu testen und zu ändern und durchgängig korrekt ist. Dieses Buch zeigt dir auch, wie du Muster aus der Kategorientheorie nutzen kannst, um die Kluft zwischen OOP und funktionaler Programmierung zu überbrücken.

  • Lerne die Grundlagen der funktionalen Programmierung und erkunde die Art und Weise, wie funktionale Programmierer an Probleme herangehen
  • Verstehe, wie sich FP von objektorientierter und imperativer Programmierung unterscheidet
  • eine Reihe von praktischen, anwendbaren Entwurfsmustern verwenden, die die Realität auf funktionale Weise modellieren
  • Lernen, wie man FP- und OOP-Funktionen in Softwareprojekte einbaut
  • Funktionale Entwurfsmuster angemessen anwenden und sie nutzen, um korrekten, robusten und leicht modifizierbaren Code zu schreiben

Table of contents

  1. Vorwort
    1. Wer sollte dieses Buch benutzen?
    2. Wie das Buch gegliedert ist
    3. In diesem Buch verwendete Konventionen
    4. O'Reilly Online Learning
    5. Wie du uns kontaktierst
  2. 1. Was ist funktionale Programmierung?
    1. Unveränderlichkeit
    2. Referenztransparenz
    3. Funktionen höherer Ordnung
    4. Faule Bewertung
    5. Denken wie ein Funktionsprogrammierer
    6. Die Vorteile von FP
      1. FP kann die Produktivität verbessern
      2. FP macht Spaß!
      3. Scala
    7. Fazit
  3. 2. Mathematische Präliminarien
    1. Mengenlehre
      1. Funktionen
      2. Arten von Funktionen
    2. Grundlagen der Informatik
      1. Anonyme Funktionen
      2. Funktionen als Objekte erster Klasse
    3. Fazit
  4. 3. Kategorientheorie und Muster
    1. Auf der Kategorientheorie basierende Patterns
      1. Eine kurze Geschichte
      2. Objekte und Morphismen
      3. Ein Beispiel für eine Kategorie
      4. Die Kategorie Skalierung
      5. Funktoren
      6. Programmiersprachenformulierung eines Funktors
    2. Die Patterns
      1. Das Functor-Muster
      2. Monoide
      3. Natürliche Verwandlungen
      4. Monaden
    3. Fazit
  5. 4. Funktionale Datenstrukturen
    1. Die Datenstruktur der Option
    2. Die Datenstruktur von Try
    3. Die Datenstruktur von Either
    4. Funktionen höherer Ordnung
    5. Monaden in für Comprehensions in Scala
    6. Traditionelle Datenstrukturen
      1. Unveränderlichkeit und Geschichte
      2. Faulheit
    7. Fazit
  6. 5. Mehr über Unveränderlichkeit
    1. Veränderliche und unveränderliche Variablen
    2. Rekursion
      1. Ein Beispiel für eine verknüpfte Liste
    3. Schwanz Rekursion
    4. Weitere Beispiele für die Macht von fold in Scala
    5. Eine Verbindung zwischen Falten und Monoiden
    6. Mehr mit Funktionen höherer Ordnung
      1. Von der Karte zur flatMap
    7. Fazit
  7. 6. Fragen der Gleichzeitigkeit
    1. Streams
    2. Akka Streams
      1. Quelle
      2. Flow
      3. Spüle
    3. Mehr über Streams
    4. FS2: Funktionale Streams für Scala
    5. Fazit
  8. 7. Wohin von hier aus?
    1. Den reinen Weg gehen
      1. Die IO-Monade
      2. Den Mittelweg gehen
      3. JVM-Sprachen
      4. .NET Sprachen
      5. Typ-Klassen
    2. Fazit
  9. A. Scala
    1. Annahmen
    2. Übersicht
    3. var und val
    4. Klassen und Objekte
    5. Funktionen
      1. Funktionen, die Funktionen zurückgeben
    6. Fall-Klassen
      1. Funktionen deklarieren
      2. Currying
      3. Anonyme Funktionen
      4. Funktionen höherer Ordnung
      5. Musterabgleich
      6. Eigenschaften
      7. Unterscheidung zwischen abstrakten Klassen und Merkmalen
      8. Faule Bewertung
      9. Typ Parameter
      10. Die Option Typ
      11. Zukunft
      12. Einige wichtige Funktionen höherer Ordnung
      13. Einige andere wichtige Funktionen höherer Ordnung
    7. Fazit
  10. Index
  11. Über den Autor

Product information

  • Title: Funktionale Programmierung lernen
  • Author(s): Jack Widman
  • Release date: September 2024
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9781098193614