Mit Veranstaltungen von RESTful Services wissen wir, welche Veranstaltungen wir erhalten und welche Daten wir erwarten. Auf diese Weise können generische Tools erstellt werden, ohne ein komplexes Echtzeit-Datenprotokoll implementieren zu müssen. Diese Ereignisse kombinieren sich besonders gut mit der funktionalen reaktiven Programmierung (BFR), um Benutzeroberflächen basierend auf Echtzeit-Datenströmen zu erstellen. Ich plane, dies mehr in einem zukünftigen Beitrag zu diskutieren, aber um eine bessere Vorstellung zu bekommen, zeigt das folgende Video eine Einführung in Feathers und wie man diese Ereignisse und FRP verwendet, um eine Echtzeitanwendung in React: 5 zu erstellen. Kann verwendet werden, um neue oder bestehende Dienste zu kartieren – genau wie eine Reihe von Bausteinen verwendet werden können, um neue Alternativen oder Strukturen zu schaffen. Als ich mit Legacy-Code arbeitete, sah ich geschwollene Domain-Modelle mit einer großen Anzahl von Methoden (ich traf bis zu mehreren hundert Methoden). Wenn Sie solche Modelle analysieren, finden Sie häufig extrinsische Verantwortlichkeiten in der Klasse. Wie Sie wissen, wird die Größe einer Klasse an der Höhe ihrer Verantwortlichkeiten gemessen. Statefull Service und Adapter-Muster sind eine gute Alternative, um extrinsische Verantwortlichkeiten aus einem Modell zu entfernen und geschwollene Modelle abnehmen zu lassen.

Während die RESTful-Dienstschicht uns eine saubere Schnittstelle zum Erstellen von RESTful-Web-APIs bietet, erfordern die meisten Anwendungen auch Funktionen, die nicht Teil einer Kernverantwortung für Dienste sind oder für mehrere Dienste gelten (Querschnittsprobleme). Beispiel: Die Dienstschichtmethoden selbst implementieren dann die Anwendungslogik und rufen die Datenbanken oder Modelle auf. Es muss keine Klasse sein, sondern kann auch eine Reihe von Funktionen sein, die öffentlich verfügbar gemacht werden. Im Zusammenhang mit Web-APIs bieten beide Möglichkeiten mehrere Vorteile: Dies ist kein so schwerwiegendes Problem, wie wenn die Anforderung oder Die Reponse auf eine Klasse verweist, auf die auch das Modell verweist. Das Problem dabei ist, dass, wenn Sie eine Änderung an Ihrer API-Anforderung vornehmen und sie in BookStuffInRequestAndResponse vornehmen müssen, dies sofort ihre Antwort beeinflusst (und umgekehrt). 6. Dokumentieren Sie bewährte Verfahren, Forschung und Ressourcen, die einem Muster zugeordnet sind. Mit einem Row Data Gateway stehen Sie vor der Frage, wo Sie die Find-Vorgänge erstellen können, die dieses Muster generieren. Sie können statische Suchmethoden verwenden, aber sie schließen Polymorphismus aus, wenn Sie verschiedene Suchmethoden durch verschiedene Datenquellen ersetzen möchten.

share this: Facebooktwittergoogle_plusredditpinterestlinkedintumblrmail