Desenvolvendo APIs Sem Arrependimento
Desenvolvendo APIs Sem Arrependimento
Todo mundo e seus cães querem uma API, é melhor você aprender a desenvolvê-las.
Sobre o Livro
Eu desenvolvo APIs há vários anos e elas têm se tornado cada vez mais comum na vida dos desenvolvedores server-side graças a ascensão dos frameworks JavaScript, aplicativos móveis e arquiteturas centradas em APIs. Por um lado você apenas captura os dados de uma fonte e os repassa como JSON, mas sobreviver às mudanças na lógica de programação, atualizações no esquema do banco de dados, novidades e deprecações pode rapidamente complicar as coisas.
Descobri que a maioria dos recursos disponíveis são incompletos ou voltados unicamente para um framework. Muitos livro e tutoriais usam maçãs e peras como exemplos, que não são concretos o suficiente, ou falam como se listar "/users" e "users/1" fossem os únicos pontos de destinos que você precisará acessar em uma API. Neste último ano eu trabalhei em uma empresa chamada Kapture, onde minha principal função foi herdar, refazer, manter e desenvolver uma API com diversos pontos de destino expondo uma grande quantidade de casos de uso.
A API em questão estava em sua versão 2 e usava o framework FuelPHP quando entrei na empresa. Ela utilizava um ORM que já foi descontinuado por seu desenvolvedor original. A Kapture estava no processo de refazer sua aplicação para iPhone para implementar novas funções. Eu aproveitei a oportunidade para acabar com essa bagunça e desenvolver a versão 3 usando o Laravel 4, tirando vantagem do seu Roteador, Migração de Banco de Dados, Esquema, Semeador, etc. Agora estamos fazendo o mesmo com a versão 4, mas desta vez não foi preciso reescrever nada; embora algumas funcionalidades sejam diferentes, o repositório da versão 3 foi forcado para a versão 4 e ambas estão sendo mantidas e rodam lado-a-lado nos mesmos servidores de API.
Com as boas práticas e conselhos gerais compartilhados neste livro, você que é novo no desenvolvimento de API terá uma boa base para começar. Do outro lado, ao relatar algumas histórias horripilantes (e como elas foram superadas ou evitadas) espero ajudá-lo a evitar as mesmas armadilhas em que eu caí, quase caí ou presenciei outros caírem. Este livro falará sobre a teoria do planejamento e desenvolvimento de APIs em qualquer linguagem de programação ou framework. Estas teorias serão aplicadas em exemplos em PHP. Evitarei código em excesso para que você não durma e também para manter os programadores de outras linguagens contentes.
Alguns do assuntos mais avançados cobertos neste livro incluem: testando pontos de destino, incorporando dados de objetos de um modo consistente e escalável, paginando respostas (incluindo objetos incorporados) e links HATEOAS.
Próximos Capítulos- Documentação
- HATEOAS
- Versionamento de APIs
Pacotes que incluem este livro
Índice
- Nota do Autor
- Introdução
- Código dos Exemplos
-
1 Semeando o Banco de Dados
- 1.1 Introdução
- 1.2 Criando Semeadores
- 1.3 É Isso Aí
- 1.4 Dados Secundários
- 1.5 Quando Executar Semeadores?
-
2 Planejando e Criando Pontos de Acesso
- 2.1 Requerimentos Funcionais
- 2.2 Teoria dos Pontos de Acesso
- 2.3 Planejando Pontos de Acesso
-
3 Teoria de Entrada e Saída
- 3.1 Requisições
- 3.2 Respostas
- 3.3 Suportando Formatos
- 3.4 Estrutura do Conteúdo
-
4 Códigos de Status, Erros e Mensagens
- 4.1 Códigos de Status HTTP
- 4.2 Códigos e Mensagens de Erro
- 4.3 Armadilhas Comuns
-
5 Testando Pontos de Acesso
- 5.1 Conceitos & Ferramentas
- 5.2 Preparação
- 5.3 Iniciando
- 5.4 Funcionalidades
- 5.5 Cenários
- 5.6 Preparando o Behat
- 5.7 Executando o Behat
-
6 Exibindo Dados
- 6.1 O Método Direto
- 6.2 Transformações com Fractal
- 6.3 Ocultando Atualizações no Esquema
- 6.4 Exibindo Erros
- 6.5 Testando Esta Saída
- 6.6 Dever de Casa
-
7 Relações Entre Dados
- 7.1 Introdução
- 7.2 Sub-Recursos
- 7.3 Arrays de Chaves Externas
- 7.4 Documentos Compostos (Carregamento Lateral)
- 7.5 Documentos Incorporados (Aninhamento)
-
8 Depurando
- 8.1 Introdução
- 8.2 Depurando na Linha de Comando
- 8.3 Depurando no Navegador
- 8.4 Depurando Através da Rede
-
9 Autenticação
- 9.1 Introdução
- 9.2 Quando a Autenticação É Útil?
- 9.3 Diferentes Métodos de Autenticação
- 9.4 Implementando um Servidor OAuth 2.0
- 9.5 Onde o Servidor OAuth 2.0 Vive?
-
10 Paginação
- 10.1 Introdução
- 10.2 Paginadores
- 10.3 Deslocamentos e Cursores
- 11 Em Breve
Garantia de 60 Dias de 100% de Satisfação da Leanpub
Em até 60 dias após a compra, você pode obter um reembolso de 100% em qualquer compra da Leanpub com apenas dois cliques.
Tecnicamente, isso é arriscado para nós, já que você terá os arquivos do livro ou curso de qualquer maneira. Mas estamos tão confiantes em nossos produtos e serviços, e em nossos autores e leitores, que oferecemos com satisfação uma garantia de devolução total do dinheiro para tudo o que vendemos.
Você só pode descobrir o quanto algo é bom experimentando, e por causa da nossa garantia de 100% de devolução do dinheiro, literalmente não há risco em tentar!
Então, não há motivo para não clicar no botão Adicionar ao Carrinho, certo?
Ver termos completos...
Ganhe $8 em uma compra de $10, e $16 em uma compra de $20
Pagamos 80% de royalties em compras de $7,99 ou mais, e 80% de royalties menos uma taxa fixa de 50 centavos em compras entre $0,99 e $7,98. Você ganha $8 em uma venda de $10, e $16 em uma venda de $20. Então, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80.000.
(Sim, alguns autores já ganharam muito mais que isso na Leanpub.)
Na verdade, os autores já ganharammais de $14 milhões escrevendo, publicando e vendendo na Leanpub.
Saiba mais sobre como escrever na Leanpub
Atualizações Gratuitas. Livre de DRM.
Ao comprar um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor continuar atualizando o livro! Muitos autores usam o Leanpub para publicar seus livros em desenvolvimento, enquanto ainda estão escrevendo. Todos os leitores recebem atualizações gratuitas, independentemente de quando compraram o livro ou quanto pagaram (incluindo gratuitos).
A maioria dos livros da Leanpub está disponível em PDF (para computadores) e EPUB (para celulares, tablets e Kindle). Os formatos incluídos em um livro são mostrados no canto superior direito desta página.
Por fim, os livros da Leanpub não possuem nenhuma proteção DRM sem sentido, então você pode lê-los facilmente em qualquer dispositivo compatível.
Saiba mais sobre os formatos de ebook da Leanpub e onde lê-los