Programmierung: Interfaces
Interfaces sind ein wesentlicher Bestandteil vieler objektorientierter Programmiersprachen. Ich möchte ein wenig erklären, was Interfaces sind, wie man sie einsetzt und würde mich freuen, wenn ihr über eure Erfahrungen mit Interfaces berichtet.
Interfaces sind, wie der Name schon sagt, Schnittstellen die verschiedenen Objekten Signaturen von Funktionen bereitstellt. Klassen können von diese Interfaces erben und sind dann verpflichtet diese bereitgestellten Funktionen zu implementieren, es sei denn wir befinden uns wieder in einer abstrakten Klasse und lassen die Funktionen wiederum abstrakt.
Wo besteht der Sinn in solchen Interfaces? Warum implementieren wir in einer Klasse nicht gleich die Funktionen? Was soll diese Mehrarbeit? Interfaces haben zwei große Vorteile, die ich erklären möchte.
In vielen objektorientierten Programmiersprachen gibt es zwar das Konzept der Vererbung, jedoch nicht die Möglichkeit der Mehrfachvererbung. Dies wird durch Interfaces ermöglicht. Ein Beispiel dazu: Wir haben normalerweise eine Klasse Flugtier und eine Klasse Landtier. Jetzt schreiben wir eine Klasse Huhn. Dieses ist sowohl ein Landtier, als auch ein Flugtier. Ohne Interfaces wäre es nicht möglich, dies abzubilden. Sind Flugtier und Landtier jedoch Interfaces, so kann das Huhn die Eigenschaften von Flugtier und Landtier erben.
Der zweite große Vorteil ist, dass Interfaces Eigenschaften festlegen, so gibt es zum Beispiel in vielen Programmiersprachen ein Interface in seine Klasse einzubinden, die erlaubt verschiedene Instanzen dieses Objekts miteinander zu vergleichen und zu sortieren. Implementiert eine geschriebene Klasse nun dieses Interface, so kann man einen Sortieralgorithmus auf diese Klasse anwenden und braucht keine spezifischen Sortiermethoden für das Objekt schreiben. Man braucht in dem Fall nur die Funktion des Interfaces richtig implementieren.
In der Sprache C# zum Beispiel kommt man bei der professionellen Programmierung nicht um Interfaces herum. Vor allem, wenn man Client-Server-Anwendungen schreiben will, benötigt man die Kenntnis über Interfaces, denn der Server legt durch Interfaces fest, über welche Methoden man auf ihm Operationen ausführen kann, der Client weiß dann, welche Funktionen er benutzen darf und welche Rückgabe er erwarten kann.
Welche Erfahrungen habt ihr mit Interfaces? Benutzt ihr sie, lehnt ihr sie ab? Wenn ihr sie ablehnt, warum?
Link dieser Seite https://www.talkteria.de/forum/topic-61646.html
Ähnliche Themen
Weitere interessante Themen
- Schöne Blatt Pflanze für die Wohnung 1022mal aufgerufen · 1 Antworten · Autor: Rubbelfeld · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Schöne Blatt Pflanze für die Wohnung
- Notebook von Plus 3128mal aufgerufen · 3 Antworten · Autor: Simone1987 · Letzter Beitrag von Entenhausen
Forum: Hardware
- Notebook von Plus
- Kosmetik in München 1210mal aufgerufen · 1 Antworten · Autor: Sumapede · Letzter Beitrag von Verbena
Forum: Fingernägel, Haut & Haare
- Kosmetik in München
- Lohnen sich Asien Fonds? 4195mal aufgerufen · 4 Antworten · Autor: Balthasar · Letzter Beitrag von FinanzScout
Forum: Geldanlage
- Lohnen sich Asien Fonds?