Casa > U > Um Api É Apenas Uma Função?

Um API é apenas uma função?

No.

Em teoria, pode ser. Na prática, tal API seria tão útil quanto um telefone, no qual você só pode iniciar chamadas. Não, você não pode digitar um número nesse telefone. Não, você não pode escolher um contato para ligar para aquele telefone. Não tem lista de contatos, não tem botões de número, só tem um único botão para iniciar a chamada.

Isso seria bem inútil, certo? Em casos muito, muito especiais, pode existir e ser útil (algo como um telefone de emergência em elevadores, que chama o número de reparação e salvamento do elevador que está pré-programado nele), mas esses são casos muito raros e muito especiais.

Em 99.9% dos casos, API é uma interface, ou seja, um conjunto de funções, assim como um conjunto de objetos (ou pelo menos regras) que descrevem o formato dos dados que você precisa passar para essas funções, e o formato dos dados que essas funções retornam para você.

Em cima disso, API é normalmente também um conjunto de regras/lógica sobre como e quando usar essas funções. Vamos voltar ao exemplo do telefone: para ligar para alguém, você tem que digitar o número manualmente (phone.TypeNumber("00XXX123123")), ou obter a lista de contatos para que você possa navegar por ela (contacts = phone.GetContacts()) e procurar pelo contato que você deseja ligar ou procurar pelo nome na lista de contatos (contact = phone.FindInContacts("partOfName")), então selecione-o (phone.TypeNumber(contacts[3].number) ou phone.TypeNumber(contact.number)), e somente então você pode realmente telefonar.StartCall(). e depois de terminar de falar, você precisa desligar (phone.EndCall()).

Então você vê, não só existe um conjunto de funções para fazer várias coisas, mas também implícitas (ou aplicadas diretamente) lógicas, seqüências significativas de ações, para o bom funcionamento do dispositivo, trabalhando corretamente com a API.

Therefore, API is:

  1. a set of functions doing various things, taking various parameters and returning various pieces of data
  2. a set of objects describing/enforcing the proper format of those parameters and pieces of returned data
  3. various sequences in which you can/need to call those various functions, in a way that makes logical sense.

De Maible Etzler

Quais são alguns exemplos de computação distribuída? :: Eu perdi o meu livro de RC. Quem me pode arranjar um livro RC duplicado em Bangalore, Indiranagar RTO?