In JavaScript sind Linsen ein Konzept aus der funktionalen Programmierung, mit dem du modular und unveränderlich auf Daten zugreifen und sie verändern kannst. Im Kern sind sie zusammensetzbare Paare aus reinen Getter- und Setter-Funktionen, die auf ein bestimmtes Feld in einem Objekt fokussiert sind.
Mit Linsen kannst du deinen Code vereinfachen, ihn wiederverwendbarer machen und typische Programmierfehler vermeiden. Zum Beispiel kannst du mit Linsen:
Verwende Linsen, um verschachtelte Records zu aktualisieren (spezifisch für Sprachen mit unveränderlichen Daten).
Felder von verschachtelten, unveränderlichen Records zu aktualisieren ist ziemlich lästig. Der Code für solche Fälle ist genauso umständlich wie die Struktur tief ist. Wenn du zum Beispiel eine Person hast, die eine Adresse enthält, die eine Straße hat, die eine Nummer hat, dann musst du zum Aktualisieren der Nummer eine neue Straße mit der neuen Nummer erzeugen, dann eine neue Adresse mit der neuen Straße und schließlich eine neue Person mit der neuen Adresse. Schon verwirrt?
Eine Lösung für dieses Problem ist die Verwendung von Linsen.
Implementiere mit Linsen mehrere Funktionen für den Zugriff auf Records. Die Testsuite erlaubt es dir außerdem, ganz auf Linsen zu verzichten, damit du mit verschiedenen Ansätzen experimentieren kannst.
Melde dich bei Exercism an, um JavaScript mit 37 Konzepte159 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.