API

Na Galipedia, a Wikipedia en galego.

Interface de Programación de Aplicación (Application Programming Interface): definición dos servizos (funcións/funcionalidades) que un determinado módulo software (peza, componente) provee a outros módulos. A API provee unha transparencia en canto á implementación interna desas funcionalidades nese módulo software: a implementación pode trocar e soamente se ve afectado esa implementación nese módulo (que provee tal API), sen se veren afectados os módulos que usan tal API.

Características[editar | editar a fonte]

Unha API representa unha interface de comunicación entre compoñentes software. Trátase do conxunto de chamadas a certas bibliotecas que ofrecen acceso a certos servizos desde os procesos e representa un método para conseguir abstracción na programación, xeralmente (aínda que non necesariamente) entre os niveis ou capas inferiores e os superiores do software. Un dos principais propósitos dunha API consiste en proporcionar un conxunto de funcións de uso xeral, por exemplo, para debuxar fiestras ou iconas na pantalla. Desta forma, os programadores benefícianse das vantaxes da API facendo uso da súa funcionalidade, evitándose o traballo de programar todo desde o principio. As APIs así mesmo son abstractas: o software que proporciona unha certa API xeralmente é chamado a implementación desa API.

Por exemplo, pódese ver a tarefa de escribir "Ola Mundo" sobre a pantalla en diferentes niveis de abstracción: Facendo todo o traballo desde o principio:

1.Traza, sobre papel milimetrado, a forma das letras (e espazo) "O, l, a,M,u, n, d, o". 
2.Crea unha matriz de cadrados negros e brancos que se asemelle á sucesión de letras. 
3.Mediante instrucións en ensamblador, escribe a información da matriz na memoria intermedia ("buffer") de pantalla. 
4.Mediante a instrución adecuada, fai que o cartón gráfico realice o envorcado desa información sobre a pantalla. 

Por medio dun sistema operativo para facer parte do traballo:

1.Carga unha fonte tipográfica proporcionada polo sistema operativo. 
2.Fai que o sistema operativo borre a pantalla. 
3.Fai que o sistema operativo debuxe o texto "Ola Mundo" usando a fonte cargada. 

Usando unha aplicación (que á súa vez usa o sistema operativo) para realizar a maior parte do traballo: Escribe un documento HTML coas palabras "Ola Mundo" para que un navegador Web como Mozilla, Firefox, Opera ou Internet Explorer poida representalo no monitor.

Como se pode ver, a primeira opción require máis pasos, cada un dos cales é moito máis complicado que os pasos das opcións seguintes. Ademais, non resulta nada práctico usar a primeira formulación para representar unha gran cantidade de información, como un artigo enciclopédico sobre a pantalla, mentres que o segundo enfoque simplifica a tarefa eliminando un paso e facendo o resto máis sinxelos e a terceira forma simplemente require escribir "Ola Mundo". Con todo, as APIs de alto nivel xeralmente perden flexibilidade; por exemplo, resulta moito máis difícil nun navegador web facer virar texto ao redor dun punto cun contorno parpadeante que programalo a baixo nivel. Ao elixir usar unha API débese chegar a un certo equilibrio entre a súa potencia e simplicidad e a súa perda de flexibilidade.