Che cosa sono le API (Application Programming Interface)
API è l'acronimo di Application Programming Interface, nonché di Application Program Interface.
Prima di realizzare questo post ho cercato la presenza online di qualche documento che potesse riassumere brevemente ed in modo chiaro l'utilità di un'API, tuttavia non sono arrivato ad un risultato che mi soddisfasse.
Neppure Wikipedia in questo caso mi convinceva, considerando che la pagina Application programming interface è riuscita a complicarmi le idee più di quanto credessi.
Poco male, ho deciso così di realizzare una breve introduzione alle API, più avanti (nei post seguenti) capirete perché.
Come parzialmente intuibile dai termini che compongono l'acronimo, le API rappresentano un'interfaccia di programmazione, resta da comprendere a cosa e utilizzabile da chi.
Un esempio di interfaccia a del.icio.us
Prendiamo l'esempio di un servizio che molti utenti conoscono ed utilizzano: del.icio.us.
del.icio.us è basato su un database che ha lo scopo di salvare tutti i preferiti degli utenti.
Ogni utente può, attraverso l'interfaccia di del.icio.us, inserire preferiti, aggiungere tag, modificare i propri dettagli ed eseguire azioni.
Ma se l'utente non volesse usare l'interfaccia di del.icio.us?
Questo è il concetto chiave. Ad esempio il browser Mozilla Firefox dispone di due estensioni che permettono di interagire agevolmente con del.icio.us usando... le API.
Riassumento il concetto espresso con questo esempio, possiamo estremizzare che le API rappresentano un'interfaccia aperta di un software, ovvero una particolare interfaccia che librerie, software o piattaforme possono usare per interagire con un programma.
A cosa servono le API
Le API permettono di espandere le funzionalità di un programma.
Per uno sviluppatore mettere a disposizione un set di API di un suo software significa dare la possibilità ad altri di interagire con la sua piattaforma e, soprattutto, estendere le funzioni e le caratteristiche della struttura base della piattaforma.
In altri termini, le API sono un ottimo strumento per promuovere un programma offrendo ad altri un modo per interagirci.
Ad esempio, le API di del.icio.us consentono agli utenti di gestire i propri preferiti senza connettersi al sito centrale, le API di Technorati offrono ai programmatori un set di strumenti per eseguire ricerche tra i blog senza passare attraverso il sito ufficiale, le API di Google Maps offrono agli utenti la possibilità di inserire mappe personalizzate nei propri siti, vedi Blogitalia.
Spero che questo post abbia in qualche modo chiarito leggermente il significato e l'utilità delle API.
Prossimamente pubblicherò alcune informazioni su come si presentano le API, come possono essere usate ed alcuni esempi concreti di implementazione.
Se nel frattempo ci sono domande o suggerimenti, sarei interessato a conoscere eventuali concetti da trattare sull'argomento API, nonché eventuali dubbi.
1 TrackBacks
Listed below are links to blogs that reference this entry: Che cosa sono le API (Application Programming Interface).
TrackBack URL for this entry: http://www.simonecarletti.com/mt4/mt-script-tb3.cgi/465
Alcuni piccoli trucchetti per farsi un'idea del numero di utenti iscritti ad un feed, anche se il dato non è pubblico. Read More
2 Comments
Leave a comment
Disclaimer:
SPAM comments or messages posted just in order to take advantage of search engines popularity might be removed without any notice.
Comments are filtered against Akismet antispam service, keyword filters and blacklists.
Cerca nel Blog
Annoiato delle solite ricerche? Prova un tag cloud!
FeedBurner Network
Questo blog è parte del network Web Marketing e Motori di ricerca (a FeedBurner Network).
Scopri di cosa si tratta (sì, lo so, il post introduttivo è un po' lungo...)
Non perderti gli aggiornamenti
Non conosci i feed RSS? Hai paura che sia una fregatura? Questa breve presentazione fa al caso tuo... prenditi 5 minuti, è divertente! :)
Ultimi commenti
Ultimi post
- Recensione libro Interface Oriented Design
- Buoni motivi per non togliere il www dall'URL
- Installare contemporaneamente Firefox 2 e Firefox 3 su Mac OSX
- Il mio talk al phpDay 2008 (video)
- Nuovo sito per ASP Stats Generator
- Questa sera, leggendo i log, ho scoperto che...
- Zend Framework ed i Web Service
- Non lo faccio perché ci vuole tempo... ma lo so fare!
- Ruby WWW::Delicious
- Benvenuto Ruby.HTML.it
Movable Type 4.1


Ciao Simone,
userei questo paragone: molti come me sono ignoranti sulla meccanica e sul funzionamento interno delle automobili...eppure attraverso lo sterzo, i pedali ed il cambio quasi tutti sono perfettamente in grado di guidare l'auto e utilizzare il mezzo per lo scopo per cui è stato realizzato.
Lo sterzo, il cambio etc.etc. rapresentano l'interfaccia pubblica della "scatola nera" auto, cioè sono l'API: non abbiamo bisogno di conoscere nient'altro per condurre il mezzo.
Possiamo però individuare più API: c'è quella del normale utilizzatore (chi guida appunto) e quella di chi è in grado di mettere mano agli "internals" dell'auto, sostituendone le parti in base a quanto il costruttore ha predisposto, cioè può esistere anche un API per "estendere" il mezzo.
Fuor di metafora in questo caso mi riferisco ai vari "hook" che i framework rendono disponibili per estendere le proprie funzionalità, anzichè utilizzarle semplicemente.
Infine c'è chi applica vere e proprie modifiche alle parti dell'auto (non sostituzioni ma interventi diretti "nel codice") ed evita di utilizzare le API (a proprio rischio e pericolo).
Finalmente una buona spiegazione!
Bravo.
Integra o sostituisci quella di Wikipedia !!
;)