Application programming interface

Trimis la data: 2007-05-11 Materia: Informatica Nivel: Facultate Pagini: 7 Nota: / 10 Downloads: 1100
Autor: Esterra3 Dimensiune: 22kb Voturi: Tipul fisierelor: doc Acorda si tu o nota acestui referat: 1 2 3 4 5 6 7 8 9 10
vezi mai multe detalii vezi mai putine detalii
Raporteaza o eroare
O interfata API este un cod sursa oferit de catre sistemul de operare sau o librarie pentru a permite apeluri la serviciile care pot fi generate din API-uri respective de catre un program.
Un program care ofera functionalitatea descrisa de interfata API este implementarea interfetei API. Interfata API in sine este abstracta, in sensul ca specifica instanta dar nu se implica in detalii de implementare.

Termenul API este folosit in 2 sensuri:

- O interfata coerenta care consta din cateva clase sau cateva seturi de functii sau proceduri interconectate.
- Un singur punct de intrare, cum ar fi o metoda, o functie sau o procedura.
Doua Interfete API foarte cunoscute sunt Single UNIX Specification si Microsoft Windows API.
Interfete API sunt deseori incorporate in Software Development Kit (SDK) .

Modelul de design a Interfetelor API

Exista o multime de modele de design a Interfetelor API. Cele prevazute pentru executie rapida deseori consta din functii, proceduri, variabile si structuri de date. Exista si alte modele cum ar fi interpretatori (emulatori) care evalueaza expresii in ECMAScript (cunoscut sub nume JavaScript) sau alt layer abstract, oferind programatorului posibilitatea de a evita implicarea in relatiile functiilor cu nivelul inferior al abstractiei.

Unele Interfete API, cum sunt cele standard pentru un sistem de operare, sunt implementate ca librarii de cod separate care sunt distribuite impreuna cu sistemul de operare. Altele au integrata functionalitatea interfetei API direct in aplicatie. Microsoft Windows API este distribuita cu sistemul de operare. Interfetele API pentru sisteme embedded, cum sunt console de jocuri video, in general intra in categoria API-urilor integrate direct in aplicatie.

O interfata API care nu necesita drepturi mari de acces sunt numite "open" (OpenGL ar fi un exemplu).
Doua linii generale ale diplomatiei de publicare a Interfetelor API:

- Unele companii protejeaza informatiile despre Interfete API. De exemplu, Sony a facut Interfata API oficiala pentru PlayStation 2 disponibila doar dezvoltatorilor cu drepturi speciale. Asta a dat posibilitatea companiei Sony de a controla cine scrie jocuri pentru PlayStation 2.

- Unele companii fac Interfete API disponibile in public. De exemplu, Microsoft are o mare parte a informatiilor despre Interfete API disponibile freeware, ce ofera posibilitatea de dezvoltare a programelor pentru platforma Windows

Cateva exemple de Interfete API:

- Single UNIX Specification (SUS)
- Microsoft Win32 API
- Java Platform, Enterprise Edition API's
- OpenGL cross-platform API
- DirectX for Microsoft Windows
- Google Maps API
- Wikipedia API
- Simple DirectMedia Layer (SDL)
- svgalib pentru Linux si FreeBSD
- Carbon si Cocoa pentru Macintosh OS

Microsoft Windows API's

Windows API, neoficial WinAPI, este numele dat de catre Microsoft pentru un set de Interfete API disponibile in sisteme de operare Microsoft Windows. Aceste interfete au fost construite pentru a fi folosite de catre programatori C/C++ si sunt cel mai direct mod de a interactiona cu sistemul Windows pentru aplicatii software. Accesul la nivel inferior la sistemul Windows, in general necesar pentru drivere, este oferit de catre Windows Driver Foundation in versiunea curenta a Windows-ului.

In sisteme de operare Windows este disponibil un Software Development Kit (SDK), care ofera documentatia si unelte pentru a permite dezvoltatorilor crearea aplicatiilor folosind Interfete API si tehnologii Windows asociate.

Istoria

Interfetele API Windows au oferit dintotdeauna acces la structura sistemelor Windows. Din acest motiv ele sunt construite in mare parte pentru programatori. Programatorilor li s-a oferit multa flexibilitate si putere in dezvoltarea aplicatiilor. In aceasi timp aplicatiilor Windows li s-a impus mare responsabilitate in manipularea nivelelor inferioare.

Pe parcurs au fost facute multe modificari la sistemul de operare Windows si Interfetele API Windows au fost de asemenea schimbate pentru a tine pasul cu sistemul de operare. Interfetele API pentru Windows 1.0 au avut mai putin de 450 de functii, in comparatie cu API-uri moderne care au mii de functii. Avand asta in vedere, Microsoft a pus mare accent pentru compatibilitatea inversa, adica compatibilitatea API-urilor noi cu API-uri din urma.

Una dintre cele mai mari schimbari facute de Microsoft era schimbarea de la Sisteme de Operare pe 16 biti la Sisteme de Operare pe 32 biti. Pentru a oferi compatibilitate, Microsoft a scris, pentru noile versiuni pe 32 biti, o schema complexa de Interfete API care permiteau codului scris pe 32 biti sa apeleze cod scris pe 16 biti (si invers in unele cazuri limitate).

Aproape fiecare noua versiune a sistemului de operare Windows a introdus schimbari in Interfete API Windows. Numele a ramas consistent intre diferite versiuni. In cele din urma Microsoft a schimbat numele din Win32 API in Windows API.

Desi Microsoft detine drepturile de autor asupra Interfetelor API Windows, in general este acceptat ca alti producatori sa emuleze Windows oferind Interfete API identice. Proiectul Wine este cea mai cunoscuta incercare de a oferi compatibilitate Interfetelor API Windows pe sisteme de operare Unix-like. ReactOS a mers cu un pas mai departe si a oferit emulare intregului sistem de operare Windows. HX DOS-Extender este alt proiect care emuleaza Interfetele API Windows , pentru a permite rularea programelor Windows mai simple din linia de comanda DOS.

Stiri
Nota explicativa
Referatele si lucrarile oferite de Referate.ro au scop educativ si orientativ pentru cercetare academica.

Iti recomandam ca referatele pe care le downloadezi de pe site sa le utilizezi doar ca sursa de inspiratie sau ca resurse educationale pentru conceperea unui referat nou, propriu si original.

Referat.ro te invata cum sa faci o lucrare de nota 10!
Linkuri utile
Programeaza-te online la salonul favorit Descarca gratuit aplicatiile pentru iOS si Android Materiale educative Jocuri Cele mai tari jocuri de pe net Referate scoala Resurse, lucrari, referate materiale pentru lucrari de nota 10
Toate imaginile, textele sau alte materiale prezentate pe site sunt proprietatea referat.ro fiind interzisa reproducerea integrala sau partiala a continutului acestui site pe alte siteuri sau in orice alta forma fara acordul scris al referat.ro. Va rugam sa consultati Termenii si conditiile de utilizare a site-ului. Informati-va despre Politica de confidentialitate. Daca aveti intrebari sau sugestii care pot ajuta la dezvoltarea site-ului va rugam sa ne scrieti la adresa webmaster@referat.ro.