Dúvida entre as Terminologias de Biblioteca e API.
Segundo os conceitos dos quais tomei conhecimento entre "Biblioteca" e "API", é a de que uma biblioteca é um conjunto de códigos pré prontos de funcionalidades que podem ser integrados na criação de um software por um desenvolvedor. Já a API é o nome dado a todas as regras e normas que que possibilitam a comunicação entre dois sistemas, como métodos HTTP, funções, classes e outros.
Estes foram os resultados que cheguei ao pesquisar sobre os significados dos termos.
Sabemos que existem API's tanto de forma "online" (REST) quanto API's "locais" (API's do sistema operacional, por exemplo), além de Bibliotecas internas e externas.
Mais uma vez, o significado dos termos foi algo que eu encontrei pesquisando nos mais diversos cantos da Internet, mas pode estarem errados, podem haver alguns detalhes dos quais estou deixando passar e que acabe solucionando todas as minhas dúvidas.
Dada as definições que dei, imagine que exista um serviço como o OpenWeather, por exemplo, que disponibiliza seus dados.
Sabemos que para acessá-los precisamos usar métodos HTTP e, esta forma, (de forma bem rude) seria a API.
Agora vem minha pergunta, o serviço do OpenWeather, o software que processa todos os dados antes de enviá-los para API, ele não seria considerado uma biblioteca? Ele bate com a definição de biblioteca que achei: "conjunto de códigos pré prontos de funcionalidades que podem ser integrados na criação de um software por um desenvolvedor".
E pergunto mais: Sistemas Operacionais possuem API's que possibilitam os usuários interagirem com o mesmo, mas o código que processa tudo antes de entregar ao usuário pela API, ele não seria uma biblioteca? Já que bate com o significado?
Sei que no final eles nunca serão chamados de bibliotecas, mas sim sempre de API's. Minha dúvida é sobre tais softwares, se no fim das contas eles também se encaixam nas definições e pobem considerados bibliotecas, mesmo que no mundo real a terminologia API se destaque.