In der letzten Woche haben wir herausgefunden, wie wir unser neues Artikel-Formular parsen können, obwohl wir mit NullPointer-Ausnahmen umgehen mussten, um fehlende oder ungültige Daten zu behandeln.
Das Feedback, das ich von David Denton, einem der http4k-Entwickler, erhalten habe, war: „Weißt du, dass du hier die Formularlinsen verwenden kannst und all diesen Mist vermeiden kannst?“
In dieser Episode werden wir den aktuellen Code umstrukturieren, um Formularlinsen zu verwenden, und sehen, wie viel Mist wir tatsächlich vermeiden können.
Wichtige Momente
* 00:00:38 Wir haben zwei Bugs gefunden
* 00:01:35 Einen Bug in den Tests reproduzieren
* 00:04:00 Den Bug so schnell wie möglich beheben
* 00:04:47 Umstrukturieren, um die Dinge zu verbessern
* 00:05:36 Einige Tests für andere Dinge hinzufügen, die möglicherweise nicht funktionieren
* 00:06:15 Sie funktionieren, also committen
* 00:06:27 Unsere Implementierung und unsere Tests überprüfen
* 00:07:26 Unsere Tests umstrukturieren, um die Absicht zu verdeutlichen
* 00:09:40 Parsing umstrukturieren, um Linsen zu verwenden
* 00:13:21 KI-Assistent ist hilfreich
* 00:15:17 IntelliJ-Umstrukturierungsfehler
* 00:21:23 http4k-Bug
* 00:23:49 Linsen verwenden, um mehrere Fehler zu diagnostizieren
* 00:24:37 Inline und extrahieren, um zu besseren Semantiken umzuarbeiten
* 00:30:17 Ein Ereignis für Parsing-Fehler auslösen
* 00:31:22 Rückruf zu „Fehler sind Ereignisse“-Episode
* 00:31:25 Einen benutzerdefinierten Hamkrest-Matcher erstellen
* 00:38:02 Commit
* 00:38:14 Überprüfung
* 00:38:46 Bug beheben, bei dem wir zwei miteinander verwobene Formulare haben
* 00:41:19 Überprüfung
Dies ist Teil 86 einer Erkundung, wohin eine Testgetriebene Entwicklung des Gilded Rose Bestandskontrollsystems uns in Kotlin führen könnte. Du kannst die gesamte Serie als Playlist sehen
und den Code auf GitHub
Wenn dir das gefällt, wirst du wahrscheinlich auch mein Buch „Java zu Kotlin, Ein Refactoring-Handbuch“ mögen
(
http://java-to-kotlin.dev). Es geht um weit mehr als nur die Syntaxunterschiede zwischen den Sprachen - es zeigt, wie du dein Denken auf einen funktionalen Stil umstellen kannst.