Application programming interface: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
minuscole
Riga 1:
 
Con '''Applicationapplication Programmingprogramming Interfaceinterface''' (in acronimo '''API''', in italiano ''Interfacciainterfaccia di Programmazioneprogrammazione di un'Applicazioneapplicazione''), in [[informatica]], si indica ogni insieme di [[funzione (informatica)|procedure]] disponibili al [[programmatore]], di solito raggruppate a formare un set di strumenti specifici per l'espletamento di un determinato compito all'interno di un certo [[programma (informatica)|programma]]. Spesso con tale termine si intendono le [[libreria (informatica)|librerie]] software disponibili in un certo [[linguaggio di programmazione]].<ref>{{cita web|url=http://msdn.microsoft.com/en-us/library/172wfck9.aspx|titolo=Calling Windows API|editore=Microsoft|accesso=13 febbraio 2014}}</ref>
 
== Caratteristiche ==
Riga 15:
Altre richiedono a chi pubblica il software di integrare l'API direttamente nell'applicazione. Questo costituisce un'ulteriore distinzione nell'esempio precedente. Le API di Microsoft Windows sono fornite con il sistema operativo e chiunque può utilizzarle. Il ''software'' per i [[sistema embedded|sistemi embedded]] come le console per videogiochi generalmente ricadono nella categoria in cui le API sono integrate con l'applicazione. Anche se la documentazione ufficiale dell'API della Playstation può essere una lettura interessante, è quasi inutile senza la corrispondente implementazione sotto forma di una libreria separata o di un ''kit'' per sviluppatori.
 
Una API che non richiede il pagamento di diritti per il suo accesso ed utilizzo è detta "aperta". Le API fornite dal [[Free software libero]], come ''software'' distribuito sotto licenza [[GNU General Public License|GPL]], sono aperte per definizione, dal momento che si può accedere al [[Codice sorgente|sorgente]] del ''software'' e capire come funziona. Anche se esiste una "[[implementazione di riferimento]]" per una API (come quella di [[Microsoft Windows]] per la [[Windows API]]), non c'è nulla che impedisce la creazione di un'implementazione alternativa. Per esempio, la maggior parte della API di Windows può essere fornita in un sistema [[UNIX]] da un ''software'' chiamato [[WINE]].
 
In generale l'analisi dell'implementazione di una API per produrne una compatibile costituisce una violazione alla legge. Questa tecnica è chiamata ''[[reverse engineering]]''. La situazione legale in questi casi presenta ambiguità quindi conviene affrontare il problema prima che l'attività di ''reverse engineering'' sia iniziata. Per esempio, una API può contenere a sua volta un [[brevetto]]