Protokoll (objektorientierte Programmierung)

In der objektorientierten Programmierung, einem Protokoll oder Schnittstelle ist ein allgemeines Mittel für Gegenstände ohne Beziehung, mit einander zu kommunizieren. Das sind Definitionen von Methoden und Werten, über die sich die Gegenstände einigen, um zusammenzuarbeiten.

Zum Beispiel, in Java (wo Protokolle Schnittstellen genannt werden), gibt die Schnittstelle eine Methode an, die das Einführen von Klassen durchführen sollte. Das bedeutet, dass eine getrennte Sortieren-Methode zum Beispiel jeden Gegenstand sortieren kann, der die Vergleichbare Schnittstelle durchführt, ohne irgendetwas über die innere Natur der Klasse wissen zu müssen (außer dass zwei dieser Gegenstände mittels verglichen werden können).

Das Protokoll ist eine Beschreibung:

  1. Die Nachrichten, die durch den Gegenstand verstanden werden.
  2. Die Argumente, dass diese Nachrichten damit geliefert werden können.
  3. Die Typen von Ergebnissen, die diese Nachrichten zurückgeben.
  4. Die invariants, die trotz Modifizierungen zum Staat eines Gegenstands bewahrt werden.
  5. Die außergewöhnlichen Situationen, die erforderlich sein werden, von Kunden zum Gegenstand behandelt zu werden.

Wenn die Gegenstände dann völlig kurz zusammengefasst werden, wird das Protokoll den einzigen Weg beschreiben, auf den auf Gegenstände durch andere Gegenstände zugegriffen werden kann.

Einige Programmiersprachen unterstützen direkt Protokolle oder Schnittstellen (Ada, C#, D, Delphi, Java, Logtalk, Ziel-C, PHP, Wurfpfeil). Ältere Sprachen können auch Eigenschaften haben, die das Schnittstelle-Konzept, wie abstrakte Grundklassen mit reinen virtuellen Funktionen in C ++, oder objektorientierte Eigenschaften in Perl unterstützen können.

Obwohl die Gehen Programmiersprache als keine objektorientierte Sprache allgemein betrachtet wird, erlaubt sie wirklich Methoden, auf benutzerbestimmten Typen definiert zu werden. Gehen Sie hat "Schnittstelle"-Typen, die mit jedem Typ vereinbar sind, der einen gegebenen Satz von Methoden unterstützt (der Typ braucht die Schnittstelle nicht ausführlich durchzuführen). Die leere Schnittstelle ist mit allen Typen vereinbar.

Bemerken Sie, dass funktionelle Programmierung und verteilte Programmiersprachen ein Konzept haben, das auch ein Protokoll genannt wird, aber dessen Bedeutung (d. h. eine Spezifizierung des erlaubten Austausches von Nachrichten, Betonung auf dem Austausch subtil verschieden ist, nicht auf Nachrichten). Dieser Unterschied ist wegen etwas verschiedener Annahmen der funktionellen Programmierung und objektorientierten Programmierparadigmen. Insbesondere der folgende werden auch als ein Teil eines Protokolls auf diesen Sprachen betrachtet:

  1. Die erlaubten Folgen von Nachrichten,
  2. Beschränkungen, die auf jedem Teilnehmer in der Kommunikation, gelegt sind
  3. Erwartete Effekten, die als die Nachricht vorkommen werden, werden behandelt.

Siehe auch


Elektromagnetisch / Monarchie Schwedens
Impressum & Datenschutz