Executando verificação de segurança...
1

Obrigado pelos tópicos kht, li os dois.

Só para concluir, eu gostaria de saber sua opinião.
No seu tópico aqui no Tabnews você diz que "Uma lib/biblioteca/pacote/módulo/crate/etc nada mais é que uma API que permite que seu programa tenha acesso à funções prontas que fazem algo que vc precisa"

Na pergunta do stackoverflow diz mais ou menos a mesma coisa.

Então, na sua opinião, os exemplos que dei acima seriam considerados bibliotecas? Mesmo que ninguém vá as chamar assim.

Carregando publicação patrocinada...
2

Bom, existe muita intersecção entre os termos, mas no primeiro link que coloquei tem o seguinte: "API não é o serviço fornecido, é o método de acesso".

Esses serviços online que vc faz uma chamada HTTP pra pegar os dados, eu entendo que são API's cuja forma de acesso é a web.

Uma biblioteca é mais o conjunto de funções que vc pode usar para compor algum programa mais complexo. Claro que ela também disponibiliza uma API para que vc possa usá-la, por isso que uma forma de definir é considerar que a lib é a implementação das regras da API. Mas a lib pode ter partes internas que não são expostas publicamente (são detalhes de implementação que quem a usa não precisa saber), ou seja, essas partes não fazem parte da API que ela expõe a quem for chamá-la.

É o caso do sistema operacional, que tem a API (a interface que os programas usam para interagir com ele), e internamente tem uma ou mais bibliotecas que fazem o "serviço sujo".

Enfim, no final do link do Stack Overflow também tem a conclusão:

Na maior parte dos tempo os termos podem ser intercambiáveis sem causar grande problema. Todo mundo entende essas três coisas como um conjunto de códigos prontos para alcançar algum objetivo.

1

Sim, os seus três primeiros parágrafos foi o que entendi e tinha descrito em minha pergunta.
Minha dúvida é justamente sobre o código atrás da API "que faz o trabalho sujo", antes de entregar ao usuário por meio da mesma, como por exemplo, a API do Sistema Operacional. Seu código por trás da interface então poderia ser considerado uma biblioteca, que é acessada através de uma API (e que, na verdade, todas são), logo, o exemplo do OpenWeather também.

Agradeço por me responder kht.