Pret: 6
Application Programming Interface
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 .
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.
Compilatoare suportate
Pentru a dezvolta software care foloseste Interfetele API Windows, este nevoie de compilator care poate importa si manipula fisierele DLL si obiectele COM caracteristice Microsoft-ului. Compilatorul trebuie sa accepte dialectul limbajelor C sau C++ si sa manipuleze IDL (interface definition language) fisiere si fisiere header care expun denumirile functiilor interioare ale Interfetelor API. Aceste compilatoare, unelte, librarii si fisiere header sunt impreunate in Microsoft Platform SDK (Software Development Kit). Pentru mult timp familia de compilatoare si unelte Microsoft Visual Studio si compilatoare Borland, au fost singurele care puteau la cerintele sus mentionate. Acuma exista MinGW si Cygwin care ofera interfete bazate pe GNU Compiler Collection. LCC-Win32 este disponibil pentru utilizare non-comerciala, continand compilator C si intretinut de catre Jacob Navia. Pelles C este compilator C gratuit oferit de catre Pelle Orinius.
Microsoft DirectX
Microsoft DirectX este o colectie de Interfete API folosita pentru manipularea taskurilor legate de multimedia, in special programarea jocurilor si video, pe platforme Microsoft.
DirectX este de asemenea folosit si de alti producatori software, in mare parte in sectorul de inginerie, din cauza abilitatii de redare rapida a obiectelor 3D de inalta calitate.
Atat DirectX runtime cat si software development kit (kitul de dezvoltare soft) sunt disponibilie gratuit, dar sunt proprietate Microsoft si sunt closed-source (fara posibilitate de schimbare, rescriere, suprascriere). DirectX a fost initial redistribuit de catre dezvoltatori de jocuri impreuna cu kiturile de instalare, dar in ultim timp DirectX a fost inclus in kit de instalare a sistemului de operare (sau in Service Packs). Unii dezvoltatori de jocuri inca mai includ DirectX in kitul de instalare si ofera posibilitate de a-l instala (sau de a face update) dupa instalarea jocului.
Cel mai recente versiuni ale DirectX-ului sunt DirectX 10 si DirectX 9.0L, disponibile exclusiv pentru Windows Vista (motivul fiind, dupa cum sustine Microsoft, faptul ca exista schimbari in arhitectura grafica a Windowsului si din cauza introducerii Windows Display Driver Model).
Istoria
Spre sfarsitul anilor 1994 Microsoft era pe punct de a lansa urmatorul sistem de operare - Windows 95. Factorul care era sa determine succesul sistemului de operare era ce, de fapt, va putea fi rulat pe acest sistem de operare. Trei angajati la Microsoft (Craig Eisler, Alex John si Eric Engstorm) erau ingrijorati de faptul ca programatorii considerau sistemul de operare DOS (lansat tot de Microsoft) o platforma mai buna pentru dezvoltarea jocurilor. Asta insemna ca putine jocuri vor fi dezvoltate pentru Windows 95 si asta va influenta succesul acestui sistem de operare.
DOS oferea acces direct la placa video, tastatura, mouse-ul, dispozitivele de sunet si alte componenete ale sistemului, in timp ce Windows 95, avand memoria protejata, restrictiona acces la toate acestea. Microsoft avea nevoie de o modalitate de a oferi programatorilor ceea ce doresc. Eisler, John si Engstorm au dezvoltat o sulutie care in cele din urma era sa fie numita DirectX.
Prima versiune a DirectX-ului a fost lansata in Septembrie 1995 avand nume Windows Games SDK. Ea era, de fapt, inlocuire pentru Interfetele API din sistemele pe 16 biti, care aveau un design foarte slab. In mare, prima versiune de DirectX ofera posibilitate de a incorpora elemente multimedia de inalta performanta.
Inainte de existenta DirectX-ului, Microsoft avea deja inclus setul de API-uri OpenGL pe platformele Windows NT. In acel timp OpenGL necesita hardware de inalta performanta si era limitat pe inginerie si utilizatori CAD . Direct3D (introdus de persoane care au dezvoltat DirectX ca o alternativa pentru OpenGL) urma sa fie o concurenta pentru (atunci) mai costisitor (din punct de vedere hardware) OpenGL pentru dezvoltarea jocurilor. Cu timpul, dupa ce puterea placilor video au crescut, OpenGL a devenit standard si conducatorul pietei. In acel punct a inceput "batalia" intre adepti ai cross-platform OpenGL si Windows-only Direct3D, care dupa cum multi sustineau era inca un exemplu de adoptare, extindere si eliminare (embrace, extend and extinguish) de la Microsoft. Alte Interfete API din DirectX sunt deseori combinate cu OpenGL in crearea jocurilor video datorita faptului ca OpenGL nu include toate functionalitatile care le are DirectX (cum ar fi suport pentru sunet sau joystick). Totusi, combinatia intre OpenGL si OpenAL (Open Audio Library) pentru acest scop a devenit populara.
DirectX este folosit ca si baza pentru Interfetele API de la console Xbox si Xbox 360, oferite de catre Microsoft. Interfetele API au fost dezvoltate de catre Microsoft si NVIDIA (care a dezvoltat hardware folosit de consola). Intefetele API din Xbox sunt similare cu cele din DirectX 8.1, dar fara posibilitate de update. Xbox a fost numit DirectXbox, dar numele a fost prescurtat pentru motive comerciale.
In 2002 Microsoft a lansat DirectX 9 cu suport pentru programe shader mult mai lungi cu pixel si vertex shader, versiunea 2.0. Microsoft a continuat cu update, si in August 2004 a introdus shader model 3.0 in DirectX 9.0c.
Textul de mai sus reprezinta un extras din "REFERAT INFORMATICA: APPLICATION PROGRAMMING INTERFACE". Pentru versiunea completa a documentului apasa butonul Download si descarca fisierul pe calculatorul tau. Prin descarcarea prezentei lucrari stiintifice, orice utilizator al site-ului www.studentie.ro declara si garanteaza ca este de acord cu utilizarile permise ale acesteia, in conformitate cu prevederile legale ablicabile in domeniul proprietatii intelectuale si in domeniul educatiei din legislatia in vigoare.
In cazul in care intampini probleme la descarcarea fisierului sau documentul nu este nici pe departe ceea ce se doreste a fi te rugam sa ne anunti aici: raporteaza o eroare