Flüssigkeit Information und Anfrage Verbrennungsgase und ideale Gasgemische LibHuGas für feuchte Verbrennungsgasgemische LibIDGAS für Verbrennungsgasgemische nach VDI-4670 LibIdGasMix für 25 ideale Gase und deren Gemische Information und Anfrage Kohlendioxid, Wasserstoff und weitere Fluide LibCO2 für Kohlendioxid CO 2 einschl.
Außerdem kann eine Schnittstelle ab C# 8. 0 Folgendes umfassen: Konstanten Operatoren Statischer Konstruktor Geschachtelte Typen Statische Felder, Methoden, Eigenschaften, Indexer und Ereignisse Memberdeklarationen, die die Syntax der explizite Schnittstellenimplementierung verwenden Explizite Zugriffsmodifizierer (der Standardzugriff ist public) Ab C# 11 kann eine Schnittstelle Member für alle Membertypen außer Feldern deklarieren static abstract. Mit diesem Feature können generische Algorithmen zahlenähnliches Verhalten angeben. Sie können dieses Feature ausprobieren, indem Sie mit dem Tutorial zu statischen abstrakten Membern in Schnittstellen arbeiten. C# interface deutsch 2. Schnittstellen dürfen keinen Instanzstatus enthalten. Obwohl statische Felder jetzt zulässig sind, sind Instanzfelder in Schnittstellen nicht zulässig. Automatische Eigenschaften von Instanzen werden in Schnittstellen nicht unterstützt, da sie implizit ein ausgeblendetes Feld deklarieren würden. Diese Regel hat eine fast unmerkliche Auswirkung auf Eigenschaftsdeklarationen.
Specification colorSpec = new ColorSpecification (); Specification lengthSpec = new LengthSpecification (); if ( colorSpec. and ( lengthSpec). isSatisfiedBy ( obj)) {... } Im oberen Beispiel steht in der Bedingung der if-Anweisung ganz ausdrücklich, dass das Objekt obj auf beide Bedingungen getestet wird. Ein weiteres Beispiel ist das sprechende Erstellen eines Datums. DateFactory. newDate (). C# Interface - So geht's - C# Hilfe. year ( 2009). month ( 2). day ( 7); Anders als bei der Verwendung eines Konstruktors, in dem die Bedeutung der drei numerischen Werte versteckt durch ihre Position im Aufruf gegeben wäre, sieht man hier durch die vorstehenden Methodennamen ausdrücklich, welche Bedeutung die einzelnen Werte haben sollen. Außerdem kann der Entwickler einer solchen Schnittstelle die Reihenfolge einschränken, in der die Methoden aufgerufen werden dürfen. Damit können etwa Methodenaufrufe, die mehrere Parameter erwarten, wesentlich verständlicher geschrieben werden. Besonders in Evans' Domain-driven Design spielen Fluent Interfaces eine große Rolle, denn sie dienen ihm dazu, spezifische Eigenschaften aus einer Domäne explizit im Programmcode auszudrücken.
Eine Entwicklungsumgebung mit Autovervollständigung wie etwa Eclipse zeigt an, welche nächsten Methoden aufgerufen werden können. Nachteile [ Bearbeiten | Quelltext bearbeiten] Die Nachteile liegen im Aufwand für das Fluent Interface selbst und der erschwerten Entwicklung von nutzenden Programmen. Call-by-Value und Call-by-Reference bei der Parameterübergabe. Die Realisierung einer Grammatik für Fluent Interface ist sehr aufwendig und das notwendige Netzwerk von Mediatoren wird schnell unübersichtlich. Zudem lässt sich auf deren Ebene schwer nachvollziehen, welche Satzkonstruktionen möglich sind. Durch Modellierung von Fluent Interfaces in Form von Diagrammen wird versucht, diesen Nachteil zu meiden. Es wird dazu aus einem Modell der notwendige Mediator-Code automatisch generiert, sodass es nur noch nötig ist, das Verhalten des Fluent Interfaces selbst zu implementieren. Eine lange Kette von Methodenaufrufen auf derselben Zeile erschwert deren Debugging, da ein Callstack typischerweise nur die Zeile des Fehlers enthält, nicht aber die Spalte im Source-File.