Este documento discute como garantir a qualidade de uma API. Ele apresenta vários tópicos importantes como documentação, testes, comunicação entre times e boas práticas como The 12 Factor App. O documento enfatiza que é preciso documentar a API claramente e testá-la extensivamente através de diferentes níveis como unidade, integração e testes de usuário. Além disso, pede para seguir boas práticas como manter o código, configurações e ambientes de desenvolvimento, teste e produção o mais similares possível.
4. +100k
Minutos
Assistidos
Webinars & Vídeos
1º Programa de
Certificação de APIs
do Brasil
Maior evento de APIs da
América Latina
800 participantes
#1
Canal sobre
APIs no Brasil
Silvio
Meira
Cristina
de Luca
Thought Leadership
7. Introdução
A ideia das APIs é Descomplicar, provendo um
mecanismo simples, seguro, escalável para um
desenvolvedor construir suas soluções
desacopladas no menor tempo possível.
8. Tipos de APIs
Restricted
Restritas a parceiros autorizados
Open
Abertas para qualquer
desenvolvedor
Private
Uso limitado a equipes internas da
empresa
10. Roberto Setubal
CEO, Itaú @CIAB’16
Sabemos que não vamos
conseguir resolver todos
problemas. Por isso, vamos
trabalhar nossa arquitetura
mais aberta, com APIs que
permitam que desenvolvedores
trabalhem com nosso sistema
de forma segura
”
15. Documentar é preciso
● OpenAPI Initiative
● Open Source, Linux Foundation
● Focado na criação, evolução e promoção
● Define um padrão agnóstico a linguagem
20. The 12 Factor App
● Metodologia para criação de aplicações como serviço
de sucesso
● Aplicável em qualquer linguagem de desenvolvimento
● Foco em portabilidade e escalabilidade
21. The 12 Factor App
The 12
Factor App
I. Codebase
One codebase tracked in version
control, many deploys
II. Dependencies
Explicitly declare and isolate
dependencies
III. Config
Store config in the environment
IV. Backing Services
Treat backing services as attached
resources
V. Build, Release, Run
Strictly separate build and run
stages
VI. Processes
Execute the app as one or more
stateless processes
VII. Port Binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Maximize robustness with fast
startup and graceful shutdown
X. Dev/Prod Parity
Keep development, staging, and
production as similar as possible
XI. Logs
Treat logs as event streams
XII. Admin Processes
Run admin/management tasks as
on-off processes
22. “Use o máximo de boas práticas
desde que você tenha mais pontos
positivos do que negativos.