Das ist also der nasseste Code, den ich je geschrieben habe. Aber es ist nützlich, was nervig ist. Der Grund für alle Wiederholungen ist, dass ich die Schnittstelle fließend halten möchte. Wenn ich die Basisklasse erweitert habe (was in diesem Fall View
ist), würde es nur eine Instanz von View
zurückgeben, was mich daran hindern würde, etwas wie
, weil die Eigenschaft Label.Text
nicht von der Basisklasse View
implementiert wird.
Also hier ist meine fließende Oberfläche. Bereit machen. Es ist hässlich und sich wiederholend. Aber es funktioniert auch und ist bequem zu bedienen.
Habe ich einen offensichtlichen Weg verpasst, es auszutrocknen?
%Vor%AKTUALISIEREN
Dank Ihrer Hilfe ist die Antwort ja, ich habe etwas Offensichtliches vermisst. Wie TheQuickBrownFox erklärt, wenn ich die fließende Oberfläche zu etwas der Form
ändere %Vor%Dann kann das Monster, das du oben siehst, in seiner Gesamtheit durch
ersetzt werden %Vor%Diese Code-Löschung ist in der Tat sehr erfreulich.
Der idiomatische F # -Ansatz für fließende Interfaces besteht nur darin, den Pipe-Forward-Operator |>
Ich denke, Sie können Ihre Funktionssignaturen auch verkürzen, indem Sie flexible Typen :
%Vor%Tags und Links f# xamarin.forms