Desenvolvimento Orientado a API (e extraindo existentes com PHP)
DESENVOLVIMENTO
ORIENTADO A API
Flávio Gomes da Silva Lisboa
Zend Framework 2 Certified Architect
Zend Framework Certified Engineer
Zend PHP Certified Engineer
www.fgsl.eti.br
E EXTRAINDO EXISTENTES COM
Por que APIs?
“O aspecto mais importante de ‘por que APIs?’ é o que ele traz na
normalização das interfaces no processo de desenvolvimento.
Desenvolvedores conseguem trabalhar em APIs estruturados e
padronizados que não estão vinculados a mudança do
comportamento subjacente, independentemente da tecnologia
utilizada ou dos componentes usados por baixo.
APIs também cuidam de esconder a complexidade subjacente de
implementação, trazendo na modularidade e separação de
interesses, que permite serviços dissociados independentes a ser
implementado e testado.
Fonte: https://dzone.com/articles/abcs-of-api-driven-development
(traduzido)
Por que APIs?
A proliferação de aplicações SaaS com Web APIs expostas dá uma
nova dimensão ao desenvolvimento de aplicações em que o
desenvolvedor tem que focar apenas a lógica de negócios da
aplicação. Outros serviços complementares (tais como
gerenciamento de usuários, logging, dashboards, implantação, etc.)
são disponibilizados pela chamada desses serviços (de terceiros ou
serviços caseiros) através de APIs. Isso reduz o de tempo de
desenvolvimento de aplicativos.”
Fonte: https://dzone.com/articles/abcs-of-api-driven-development
(traduzido)
O que é a Economia de API?
"A resposta de negócios para 'por que APIs?' é mesmo mais
intrigante porque APIs agem como portais para os ativos
corporativos digitais. Organizações tratam APIs como um
importante canal de receitas. Na verdade, em algumas
organizações como a Salesforce.com, APIs contribuem para
mais de 50% da receita total. A capacidade das APIs de gerar
receita pela monetização de ativos digitais deu início a uma
nova maneira de dar suporte às receitas da empresa. Este
fenômeno precisava de algum novo jargão, assim o mundo
chamou-lhe a economia de API. "
Fonte: https://dzone.com/articles/abcs-of-api-driven-
development (traduzido)
O que é desenvolvimento
orientado a API
Um projeto primeiro-API é onde a API é o primeiro artefato
criado durante o processo de desenvolvimento. contratos de API
(especificação da API e assinatura, incluindo o nome,
parâmetros, tipos, etc.) são criados por arquitetos de API
dedicados e por desenvolvedores front-end responsáveis pela
criação da experiência do usuário final. Contratos de API são
finalizados em colaboração com desenvolvedores de front-end
e back-end.
Fonte: https://dzone.com/articles/abcs-of-api-driven-development
(traduzido)
O que é desenvolvimento
orientado a API
Uma vez que os contratos de API são finalizados, os desenvolvedores
front-end constroem simulações em torno de APIs e criam e
aperfeiçoam a experiência do usuário final. Em paralelo, os
desenvolvedores de back-end implementam a lógica subjacente das
APIs. Suites de teste dedicadas são criadas em torno dessas APIs e, de
certa forma, elas fomentam a ideia de Test-Driven Development.
Finalmente, as implementações do front-end e desenvolvedores de
back-end são reunidas. Isto tende a não fracassar enquanto os
desenvolvedores da API têm de honrar com código os contratos
como estabelecido no primeiro passo.
Fonte: https://dzone.com/articles/abcs-of-api-driven-development (traduzido)
O que é desenvolvimento
orientado a API
Em um nível de implementação de código, APIs estes dias
são projetados usando a arquitetura REST com payloads
JSON. SOAP, XML e outros padrões são vistos agora como
pesados e caminham para o esquecimento.
Fonte: https://dzone.com/articles/abcs-of-api-driven-development (traduzido)
Benefícios do DOA
● Desenvolvimento mais rápido de aplicativos;
● Foco somente na sua lógica de negócios;
● Melhor documentação;
● Inerente arquitetura de aplicações baseada em
microsserviços;
● Aplicação pronta para o Mundo Conectado.
Apigility é um construtor de API, projetado para
simplificar a criação e manutenção de APIs úteis,
fáceis de consumir, e bem estruturados.
Independentemente da sua experiência na
construção de API, com Apigility você pode
construir APIs que para aplicativos móveis,
comunidades de desenvolvedores, e qualquer
outro acesso controlado às suas aplicações.
Apigility facilita a implementação de
autenticação e autorização, validação de
conteúdo e documentação de API. Além disso,
possui uma série de módulos opcionais, desde
cache até mapeamento objeto-relacional.
AUTENTICAÇÃO AUTORIZAÇÃO
VALIDAÇÃO
DE
CONTEÚDO
DOCUMENTAÇÃO
DE API