Pagine

martedì 22 giugno 2010

Windows API

API e Windows

API è un acronimo che sta per "applications programming interface" ovvero "interfaccia alla programmazione di applicazioni".
Le Windows Api chiamate anche WinAPI o Win32API sono quindi delle librerie che forniscono, al programmatore, un'interfaccia verso il sistema operativo.
In questo modo sarà facile copiare un file, aprire una finestra di dialogo o spegnere il computer perchè basterà connettersi alla funzione della giusta libreria per ottenere il risultato voluto.

Le Windows API

Le funzionalità offerte dalle API di Windows possono essere racchiuse in otto categorie:
  • Servizi di base: sono gestiti dal kernel.exe o librerie affini nelle varie versioni di windows (come kernel32.dll). Sono le funzionalità di base come la gestione degli errori, l'accesso ai dischi o al file system, la gestione dei processi e/o dei thread.
  • Servizi avanzati: sono gestiti da advapi32.dll. Sono funzionalità avanzate come la gestione degli utenti, l'accensione o spegnimento del PC, l'accesso al registro del sistema.
  • Interfaccia al device grafico: è gestita da gdi32.dll. Funzionalità su monitor, stampanti e affini.
  • Interfaccia utente: è gestita da user32.dll. Gestisce funzionalità di interazione con l'utente come l'input da tastiera o mouse, interazione con la interfaccia grafica
  • Libreria delle finestre di dialogo: gestita da commdlg32.dll. Gestisce le finestre di dialogo di comune utilizzo come quella di salvataggio o apertura di un file, scelta di un colore o di un font.
  • Libreria dei controlli: gestita da comctl32.dll. Fornisce l'accesso a controlli avanzati da parte del sistema operativo come la barra di stato, le schede nelle finestre di dialogo, le progress bar...
  • Windows shell: gestita da shell32.dll. Fornisce l'accesso a funzionalità offerte dalla shell di windows.
  • Servizi di rete: fornisce l'accesso a diversi controlli di rete.

Oltre a queste otto categorie esistono altre librerie che corrispondono ad altrettante API.
Esistono funzionalità legate al web o per il multimediale ed ognuna di esse è gestita da una libreria specifica.
Le windows API, quindi, rappresentano un ottimo strumento per ottenere il massimo dalle proprie applicazioni senza dover "reinventare" di continuo la ruota.
Si pensi, infatti, al salvataggio di un file.
Se si crea una applicazione e si vuole salvare il file prodotto da essa non sarà necessario "creare" la finestra di salvataggio del file ma basterà interfacciarsi alla libreria apposita con notevole risparmio di tempo.

Le API di windows sono fornite dal Platform SDK ovvero una serie di strumenti per lo sviluppo del software e di documentazione molto corposo.

Termino questo articolo dicendo che innumerevoli linguaggi di programmazione hanno la possibilità di interfacciarsi alle API di windows.
Oltre, ovviamente, ai linguaggi proprietari come Visual Basic e .NET anche linguaggi open source come perl, e python hanno questa possibilità.
E' mia intenzione, nel prossimo futuro, approfondire questo tema.

Nessun commento:

Posta un commento