July 31, 2020 - No Comments!

Nutzungsvertrag design Muster

Derzeit haben wir Muster in vier Hauptkategorien: (1) Komposition, (2) Visualisierung, (3) Prozess und (4) Text. Trennen Sie grundlegende Abfragen von abgeleiteten Abfragen. Abgeleitete Abfragen können in Bezug auf grundlegende Abfragen angegeben werden. Eine abgeleitete Abfrage ist eine Abfrage, die andere Abfragen verwendet, um eine endgültige Antwort zu erhalten. Eine grundlegende Abfrage wird direkt hinter der Datenquelle abgefragt, um die Daten abzubekommen. Betrachten Sie einen Bankkontodienst, der alle Kontoaktivitäten für eine Bank unterstützt, einschließlich Giro- und Sparkonten. Wenn ein Client den Saldo des Kontos abrufen muss, ruft er den GetBalance-Dienst auf. Diese Methode erkundigt sich nach den Scheck- und Sparkontosalden des Kontoinhabers, summiert sie und gibt das Ergebnis zurück. Wenn der Client nur den Gesamtsaldo benötigt, gäbe es nie ein Problem. Wenn ein Kunde jedoch nur den Girokontosaldo benötigt, erfüllt der Dienst diesen Bedarf nicht.

Daher ist es notwendig, die “grundlegenden” Abfragen von GetBalance für Ersparnisse und Girokonten von der zusammengesetzten abgeleiteten Abfrage für beide Konten zu trennen. Ein korrekter Entwurf würde aus drei Dienstschnittstellen bestehen: GetBalance für einen Girokontodienst, für einen Sparkontodienst und für einen zusammengesetzten Bankkontodienst. Die zusammengesetzte abgeleitete Dienstmethode verwendet die grundlegenden Abfragen, um die Daten im Auftrag des Clients abzuleiten. Bei der Verwendung von Verträgen sollte ein Lieferant nicht versuchen, zu überprüfen, ob die Vertragsbedingungen erfüllt sind – eine Praxis, die als offensive Programmierung bezeichnet wird – die allgemeine Idee ist, dass Code “hart ausfallen” sollte, wobei die Vertragsüberprüfung das Sicherheitsnetz ist. Ein Lieferantendatenpuffer kann z. B. erfordern, dass Daten im Puffer vorhanden sind, wenn ein Lösch-Feature aufgerufen wird. Anschließend garantiert der Lieferant dem Kunden, dass das Datenelement tatsächlich aus dem Puffer gelöscht wird, wenn ein Lösch-Feature seine Arbeit beendet.

Andere Konstruktionsverträge sind Konzepte der Klasseninvariante. Die klasseninvariante garantiert (für die lokale Klasse), dass der Status der Klasse am Ende jeder Featureausführung innerhalb der angegebenen Toleranzen beibehalten wird. Vertragshandwerker zu ermutigen, über Vertragsbenutzer in alltäglichen Geschäftsszenarien nachzudenken und wie sie effektiv mit ihnen kommunizieren können, umfassen Verwaltungs-, Repository- und Metadatenschnittstellen. Sie müssen die Dienstschnittstellen für einen Servicevertrag im Api-Unterverzeichnis für ein Modul definieren. Die Verwendung von Assertionen kann als eine Form des Test-Orakels betrachtet werden, eine Möglichkeit, den Entwurf durch Vertragsimplementierung zu testen. Das Design durch Vertragsmethode der Schnittstellenvertragsgestaltung wurde für die Gestaltung der Schnittstellen von Klassen entwickelt, aber die Prinzipien passen ebenso gut zu Service Interface Design, wenn auch mit einer anderen Neigung. Design per Vertrag für Interface Design basiert auf sechs Prinzipien: Beim Contracting-Prozess geht es nicht nur um den Vertrag. Wir wollen Muster nicht nur nutzen, um den Inhalt von Verträgen zu verbessern, sondern auch deren Kommunikation und Präsentation. Wir zeigen in Tabelle 11 einige Entwicklungssprachen mit den zugehörigen Vertragssprachen. Alle diese Vertragssprachen wurden für Testgenerierungszwecke verwendet.

Published by: filtered

Comments are closed.