CORBA: Lær om distribueret computing

Afsløring: Din support hjælper med at holde webstedet kørt! Vi tjener et henvisningsgebyr for nogle af de tjenester, vi anbefaler på denne side.


Common Object Request Broker Architecture (CORBA) er en åben, leverandøruafhængig standard designet til at muliggøre samarbejde mellem computersystemer, der er implementeret på forskellige operativsystemer, programmeringssprog og hardware platforme.

CORBA blev defineret af Object Management Group (OMG), et internationalt non-profit teknologistandardkonsortium.

Nederste linje: CORBA muliggør kommunikation mellem computere, der kører på forskellige platforme, ved hjælp af software skrevet på forskellige programmeringssprog.

Kort historie

Arkitekturen beskrevet i CORBA-standarden målrettet oprindeligt softwareudviklere, der ønskede at oprette interoperable applikationer baseret på distribuerede interopererende objekter.

CORBA 1.0-specifikationen blev frigivet i oktober 1991, og introducerede CORBA-objektmodellen, Interface Definition Language (IDL) og kernesættet med programmerings-API’er og sprogmappinger for C-programmeringssprog.

CORBA 1.1 og 1.2 fulgte kort efterpå, frigivet i henholdsvis februar 1992 og december 1993. Disse versioner fjernede mange uklarheder fra den originale specifikation.

CORBA 2.0-frigivelsen kom i august 1996. Det var den første store revision af specifikationen. Opdateringen introducerede et væld af nye funktioner, såsom support til lagdelte sikkerhed og transaktionstjenester, nye datatype-udvidelser og samarbejde med OLE2 / COM, og så videre.

CORBA-versioner fra 2.1 til 2.6 frigivet mellem august 1997 og december 2001 var præget af trinvise opdateringer med fokus på at tilføje nye og reviderede funktioner til specifikationen.

Den næste markante udgivelse var CORBA 3.0 i juli 2002. CORBA 3.1.1 fra august 2011 blev også formelt offentliggjort af ISO som 2012-udgave standard ISO / IEC 19500-1, 19500-2 og 19500-3.

Den seneste udgave af CORBA er version 3.3 fra november 2012. Du kan læse mere om alle formelt frigivne versioner og hver specifikation især på spec-sektionen på OMGs CORBA-websted.

CORBA-funktioner

CORBA gør det muligt for computere, der kører software skrevet på forskellige programmeringssprog på forskellige platforme, at kommunikere.

For at opnå dette bruger CORBA et Interface Definition Language (IDL) til at specificere forskellige grænseflader, objekter, der er til stede for omverdenen. CORBA specificerer kortlægninger fra IDL til et specifikt programmeringssprog som C ++ eller Java.

Standard kortlægninger for CORBA findes for Ada, C, C ++, Java, Lisp, Object Pascal, PL / I, Ruby, Python og Smalltalk programmeringssprog.

Ikke-standard kortlægninger for C #, Erlang, Perl, Tcl og Visual Basic implementeres af Object Request Brokers (ORB’er) skrevet til disse programmeringssprog.

CORBA-specifikationen definerer strengt, at en applikation skal kommunikere med andre objekter gennem en Object Request Broker (ORB).

Applikationen initialiserer ORB og bruger en intern objektadapter til referencetælling og objekt- og referenceinitiativeringspolitikker. Objektadapteren bruges til at registrere forekomster af de genererede kodeklasser, som er resultatet af kompilering af bruger-IDL-koden.

IDL-kortlægninger til nogle programmeringssprog er ganske ligetil, så det er simpelt at bruge CORBA i Java- eller Python-applikationer.

IDL til C ++ kortlægningen på den anden side kræver, at programmereren skal lære de datatyper, der foregår C ++ Standard Template Library (STL). Eller kortlægningen IDL til C, hvor en programmerer kræves for manuelt at emulere objektorienterede funktioner, da C ikke er objektorienteret.

CORBA-brug og applikationer

CORBA er nyttig i mange situationer.

På grund af den lette måde, at CORBA integrerer maskiner fra forskellige leverandører med størrelser, der spænder fra mainframes, gennem tynde klienter og desktops til håndholdte enheder og indlejrede systemer, er det den mellemliggende software, du vælger for store (og endda ikke så store) virksomheder..

En af de vigtigste og mest almindelige CORBA-anvendelser er i servere, der skal håndtere et stort antal klienter, til høje hitfrekvenser, med høj pålidelighed.

Specialiseringer til skalerbarhed og fejltolerance understøtter disse systemer. CORBA bruges ikke kun til store applikationer; specialiserede versioner af CORBA kører realtidssystemer og små indlejrede systemer.

CORBA Resources

For en mere detaljeret gennemgang af CORBA foreslår vi, at du tjekker nogle af de følgende online ressourcer:

  • Den officielle CORBA 3.3-specifikation er den grundlæggende vejledning.

  • CORBA Explained Simply af Ciaran McHale er en gratis e-bog om CORBA. Det er angivet som en officiel ressource på CORBA-webstedet og giver et detaljeret kig på CORBA.

  • En simpel C ++ klient / server i CORBA på CodeProject.com er en meget flot introduktion til Visual C ++ CORBA-udvikling.

CORBA-bøger

Bøger, der specifikt dækker CORBA, er svære at finde, i stedet finder du normalt kapitler om CORBA i bøger om programmeringssprog. Mange bøger, der nævner CORBA, er også forældede. Vi udpegede et par titler:

  • CORBA 3 Fundamentals and Programming, 2. udgave (2000) af Jon Siegel: CORBA 3 gør distribueret programmering mere kraftfuld og produktiv end nogensinde før. I denne vejledning til CORBA-programmering viser en OMG-insider arkitekter og programmerere, hvordan man får mest muligt ud af alle disse funktioner.

  • CORBA 3 (1998) af Reaz Hoque: denne bog dækker dynamisk påkaldelse, grænsefladens opbevaring, sikkerhed og andre centrale CORBA-tjenester. Forfatteren præsenterer også nye funktioner i CORBA 3-specifikationen. Det sidste afsnit viser, hvordan man opretter CORBA Web-applikationer med eksempler, der bruger Java, JavaBeans, og den nye CORBA-komponent og scripting-funktioner.

  • Java-programmering med CORBA: Avancerede teknikker til bygning af distribuerede applikationer (2007) af Brose, Vogel og Duddy: Forfatterne præsenterer avancerede teknikker og eksempler i den virkelige verden til at bygge både enkle og komplekse programmer ved hjælp af Java med CORBA. Denne bog indeholder også dybdegående kodeeksempler samt udvidet dækning af avancerede emner, herunder Portable Object Adapter (POA), Remote Method Invocation (RMI) via IIOP og EJB.

Konklusion

CORBA-specifikationen introducerede nogle interessante muligheder for udviklere, såsom programmeringssprog og OS-uafhængighed. De mest populære programmeringssprog, der bruges med CORBA, er Java og C++.

Disse fakta viste sig også at være den vigtigste kilde til problemer for CORBA-designudvalget, da interoperabilitet øgede konkurrencen og gjorde det lettere for kunderne at skifte mellem alternative implementeringer.

Dette førte igen til mange politiske spørgsmål i udvalget og frembragte hyppige frigivelser og revisioner af CORBA.

CORBA er en meget detaljeret standard med mange funktioner. Mange tidlige versioner implementerede ikke hele specifikationen, hvilket førte til dårlig reklame. Det tog simpelthen nogen tid, før robuste CORBA-implementeringer blev overflade og opnået popularitet.

Yderligere læsning og ressourcer

Vi har flere guider, tutorials og infografik relateret til kodning og udvikling:

  • C ++ Udviklerressourcer: Hvis du hellere holder sig til et mere traditionelt sprog, giver denne side dig alle de værktøjer, du har brug for.

  • Java: Introduktion, hvordan man lærer og ressourcer: Det andet (sammen med C ++) mest populære sprog, der bruges sammen med CORBA.

  • Hurtig introduktion og ressourcer: dette er et af de nyeste C-lignende sprog. Fremtiden for programmering? Find ud af det her!

Hvilken kode skal du lære?

Forvirret over hvilket programmeringssprog du skal lære at kode i? Se vores infographic, hvilken kode du skal lære?

Det diskuterer ikke kun forskellige aspekter af sprogene, det besvarer vigtige spørgsmål som ”Hvor mange penge vil jeg tjene til at programmere Java til en levevej?”

Hvilken kode skal du lære?
Hvilken kode skal du lære?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map