Mit der Vielzahl an Plattformen und Programmiersprachen wird die Entwicklung von Anwendungen immer komplexer. Um die Softwareentwicklung zu vereinfachen, werden neue Konzepte entwickelt. Ein Beispiel dafür ist CORBA (Common Object Request Broker Architecture). Worum handelt es sich dabei? Was sind die Vorteile? Finde die Antworten in diesem Artikel.
Was ist CORBA ?
CORBA ist die Abkürzung für Common Object Request Broker Architecture.
Es handelt sich um einen Standard, der 1992 von der Object Management Group (OMG) entwickelt wurde, einem Konsortium aus mehreren hundert Unternehmen, die sich der Herstellung von Computerhardware und der Veröffentlichung von Software widmen.
Ziel ist es, durch objektorientierte Designprinzipien plattform- und sprachunabhängige verteilte Anwendungen zu entwickeln.
Zur Erinnerung: Ein Objekt in der Computerentwicklung ist ein Softwarebaustein mit einer eigenen internen Struktur und einem eigenen Verhalten. Die Interaktion zwischen den verschiedenen Objekten einer Anwendung ermöglicht es, neue Funktionen zu schaffen oder Daten zu gruppieren.
Die meisten Anwendungen basieren jedoch auf der Zusammenstellung von Objekten, die auf der Grundlage unterschiedlicher Technologien entwickelt wurden, sei es die Programmiersprache für das Schreiben, der Prozess für die Ausführung oder die Maschinen, die für die Bereitstellung verwendet werden.
Corba ermöglicht es, einen Rahmen zu definieren, der es all diesen Objekten ermöglicht, trotz dieser Unterschiede miteinander zu kommunizieren. Und damit die für die Anwendung erforderlichen Funktionen zu schaffen.
Mit anderen Worten: CORBA entwickelt eine einheitliche Architektur für Anwendungen, die unterschiedliche Technologien verwenden.
Um den CORBA-Framework zu verstehen, musst du seine Schlüsselkomponente (ORB) und die Sprache zur Definition von Schnittstellen (IDL) kennen.
Auch interessant: OpenShift – Funktionsweise
Object Request Broker (ORB)
Bevor wir versuchen, den ORB zu erklären, müssen wir auf einen Punkt zurückkommen. CORBA beinhaltet zwei Arten von Objekten:
- Der Server (oder Anbieter): Er ist derjenige, der Funktionen anbietet, die von anderen Objekten genutzt werden können.
- Der Client: Das ist das Objekt, das die Dienste des Servers in Anspruch nimmt.
Damit die Anwendung funktioniert, müssen diese beiden Objekte miteinander kommunizieren. An dieser Stelle kommt der ORB ins Spiel.
Der Object Request Broker ist die Schlüsselkomponente der CORBA-Architektur.
Konkret implementiert der ORB die Objektstruktur (auch Objektbus genannt), die die Kommunikation zwischen den Client-Objekten und dem Serverobjekt erleichtert. Dadurch kann der Client ein Objekt (lokal oder entfernt) aufrufen, unabhängig davon, wo es sich befindet. Dazu sendet der ORB-Broker eine Anfrage an die aufgerufenen Objekte und gibt die Antwort an den Client zurück. Auf diese Weise werden neue Funktionen oder Dienste geschaffen.
Gut zu wissen: Jedes Objekt bietet mehrere Dienste (wie Time service, property service, security service, collection service, trader object service…) mit ganz unterschiedlichen Funktionen an. Diese verschiedenen Dienste werden von der Object Management Group (oder OMG) definiert.
Der ORB muss sie in Form einer Schnittstellendefinitionssprache (IDL) kommunizieren.
Auch interessant: Data Science Bootcamp
Interface Definition Language (IDL)
Jede Komponente wird durch eine Schnittstelle beschrieben. Die IDL (oder Interface Definition Language) definiert dann diese Schnittstellen in einer bestimmten Sprache (unabhängig von den verwendeten Programmiersprachen).
Die Idee ist, den ORBs zu helfen, die verfügbaren Operationen zu verstehen und die Syntax zu identifizieren, um sie aufzurufen. Zu diesem Zweck erstellt ein Compiler einen spezifischen Code, der die Nutzung der Schnittstelle durch den Client und den Server erleichtert. Für den Client ist dieser Code der Stub, für den Server ist es das Skeleton.
Es ist diese Definition einer Sprache, die die Unabhängigkeit und Interoperabilität der verschiedenen Technologien, die für die Anwendung verwendet werden, sicherstellt. Beispielsweise können Module, die in C++ programmiert sind, mit anderen Modulen, die in Java programmiert sind, kommunizieren.
Gut zu wissen: Diese IDLs gibt es für verschiedene Programmiersprachen, z. B. C++, Java, Ada, Cobol…
Was sind die Vorteile von CORBA ?
Durch die Definition einer einheitlichen Architektur für komplexe verteilte Anwendungen bietet Corba den Entwicklern zahlreiche Vorteile:
- Die Wiederverwendbarkeit von Softwarekomponenten: Anwendungen sind nicht auf eine bestimmte Art von Technologie beschränkt, um zu funktionieren.
- Interoperabilität zwischen verschiedenen Sprachen und IT-Umgebungen: Dank IDL können Objekte leicht miteinander kommunizieren und so neue Funktionen und Dienste schaffen.
- Standorttransparenz: Corba ermöglicht es Kunden, Objekte lokal oder remote aufzurufen, unabhängig von ihrem Standort.
- Heterogene Umgebung (Sprache, OS, Maschine): Unabhängig von den Technologien, die eine Anwendung verwendet, schafft CORBA einen einheitlichen Rahmen, der dafür sorgt, dass die Anwendung reibungslos funktioniert.
Auch interessant:
Wie und wo kann man die Konzepte von CORBA lernen ?
Die CORBA-Architektur gehört zu den Konzepten, die für einen Webentwickler unumgänglich sind. Um mehr über dieses Modell zu erfahren, ist es sinnvoll, sich von qualifizierten und kompetenten Fachleuten ausbilden zu lassen.
Das ist genau der Fall bei unserem Ausbildungsinstitut Datascientest. Du kannst unsere Ausbildung zum DevOps-Ingenieur absolvieren und ein staatlich anerkanntes Diplom erwerben. Hier lernst du die Grundlagen der Softwareentwicklung und -verwaltung.