Construindo APIs testáveis com Node.js (Construindo APIs testáveis com Node.js)
Grátis!
Valor mínimo
$7.99
Minimum paid price

Construindo APIs testáveis com Node.js

Fundamentos de qualidade de software para a construção de APIs com Node.js

Sobre o Livro

Com o lançamento do Node.js o javascript garantiu seu espaço no server side. A vantagem de ter I/O assíncrono e, principalmente, o fato de ser javascript e já contar com uma grande comunidade.

Hoje essas vantagens posicionam o Node.js como um das principais opções quando se pensa em APIs e microsserviços.

Este livro vai guiar você na criação de uma API utilizando as melhores práticas no desenvolvimento de software seguindo padrões de desenvolvimento como TDD (Test Driven Development).

Neste livro você irá aprender:

  • A história do Node.js
  • Qual o diferencial do Node.js comparado a outras linguagens
  • Como desenvolver aplicações com Node.js utilizando as ultimas funcionalidades do Ecmascript
  • Construir aplicações modularizadas e desacopladas
  • Integração com banco de dados NoSQL utilizando MongoDB
  • Desenvolver guiado por testes com TDD
  • Porque testes facilitam o desenvolvimento
  • Como testar aplicações em javascript
  • Autenticação e autorização de APIs

O Livro está disponível no GitHub através deste link.

Quer falar comigo? Venha para a Tech Leads club acesse aqui!

Linkedin: https://www.linkedin.com/in/waldemarnt/

Instagram: @waldemar.devlab

Sobre o Autor

Waldemar Neto
Waldemar Neto

Waldemar Neto é engenheiro de software, contribuidor open-source, palestrante e criador de conteúdo. Começou sua carreira desenvolvendo servidores open source de MMRPGs em meados de 2004 e hoje possui mais de 15 anos de experiência na área de desenvolvimento.

Passou por outras grandes empresas como Thoughtworks e POSSIBLE e atualmente é engenheiro de software na Atlassian (Sydney/Austrália). 

Waldemar é apaixonado por  metodologias ágeis e em seu tempo livre  busca contribuir para a comunidade, principalmente criando conteúdo relacionado a microsserviços, apis e qualidade de software.

Sumário

  • Introdução
  • Sobre o autor
  • Agradecimentos
  • Introdução ao Node.js
    • O Google V8
    • Entendendo o Node.js single thread
    • I/O assíncrono não bloqueante
    • Event Loop
    • Call Stack
    • Multithreading
    • Task Queue
    • Micro e Macro Tasks
  • Configuração do ambiente de desenvolvimento
    • O que é um transpiler
    • Gerenciamento de projeto e dependências
  • Iniciando o projeto
    • Configuração inicial
    • Configurando suporte ao Ecmascript 6
    • Configurando o servidor web
    • Entendendo o Middleware pattern
    • Middlewares no Express
  • Desenvolvimento guiado por testes
    • TDD - Test Driven Development
    • Os ciclos do TDD
    • A pirâmide de testes
    • Os tipos de testes
    • Test Doubles
    • O ambiente de testes em javascript
  • Configurando testes de integração
    • Instalando Mocha, Chai e Supertest
    • Separando execução de configuração
    • Configurando os testes
    • Criando o primeiro caso de teste
    • Executando os testes
    • Fazendo os testes passarem
  • Estrutura de diretórios e arquivos
    • O diretório raiz
    • O que fica no diretório raiz?
    • Dentro do diretório source
    • Responsabilidades diferentes dentro de um mesmo source
    • Server e Client no mesmo repositório
    • Separação por funcionalidade
    • Conversão de nomes
  • Rotas com o express router
    • Separando as rotas
    • Rotas por recurso
    • Router paths
    • Executando os testes
  • Controllers
    • Configurando os testes de unidade
    • Testando o controller unitariamente
    • Mocks, Stubs e Spies com Sinon.js
    • Integrando controllers e rotas
  • Configurando o MongoDB como banco de dados
    • Introdução ao MongoDB
    • Configurando o banco de dados com Mongoose
    • Integrando o Mongoose com a aplicação
    • Alterando a inicilização
  • O padrão MVC
    • Voltando ao tempo do Smalltalk
    • MVC no javascript
    • Models
    • Views
    • Controllers
    • As vantagens de utilizar MVC
    • MVC em API
  • Models
    • Criando o model com Mongoose
    • Singleton Design Pattern
    • Integrando models e controllers
    • Atualizando o controller para utilizar o model
    • Testando casos de erro
  • O passo Refactor do TDD
    • Integração entre rota, controller e model
  • Behaviour Driven Development - BDD
    • Como o BDD funciona
    • O outside-in
    • BDD com Mocha e Chai
  • Operações de CRUD
    • Busca por id
    • Criando um recurso
    • Atualizando um recurso
    • Deletando um recurso
  • Configuração por ambiente
    • Alterando a arquitetura
    • Configurações por ambiente
    • Utilizando o módulo node-config
  • Usuários e autenticação
    • Encriptando senhas com Bcrypt
    • Middlewares no Mongoose
  • Autenticação e controle de acesso com Access Control List - ACL
    • Express ACL
    • Autenticação com JSON Web Token
    • Criando Middlewares
  • Estilo de código e formatação
    • Eslint
    • Prettier
    • Configuração
  • Final

A garantia Leanpub incondicional, sem riscos, de 100% de satisfação

Durante 60 dias da data de compra você pode solicitar o reembolso total de qualquer compra Leanpub, em dois cliques. Nós processamos os reembolsos manualmente, então eles podem demorar alguns dias para aparecer. Veja os 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. Portanto, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80,000.

(Sim, alguns autores já ganharam muito mais do que isso no Leanpub.)

Na verdade, os autores ganharammais de 13 milhões de dólares escrevendo, publicando e vendendo no Leanpub.

Saiba mais sobre escrever no Leanpub

Atualizações grauitas. Sem DRM.

Se você compra um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor atualizar o livro! Muitos autores utilizam a Leanpub para publicar os seus livros em andamento, enquanto eles estão os escrevendo. Todos os leitores recebem atualizações gratuitas, não importa quando ou por quanto eles compraram o livro (até mesmo de graça).

A maioria dos livros Leanpub estão disponíveis em PDF (para computadores) e EPUB (para telefones, tablets, e Kindle). Os formatos que um livro inclui são exibidos no top direito dessa página.

Por último, livros Leapub não têm nenhuma proteção anti-cópias DRM sem sentido, então você pode facilmente lê-los em qualquer dispositivo suportado.

Aprenda mais sobre os formatos de ebook da Leanpub e aonde lê-los

Escreva e Publique na Leanpub

Autores e editoras usam a Leanpub para publicar incríveis livros em andamento e completos como esse aqui. Você pode usar a Leanpub para escrever, publicar e vender o seu livro também! A Leanpub é uma plataforma poderosa para autores sérios, combinando fluxos de trabalho simples e elegantes para escrita e publicação, com uma loja focada em vender livros em andamento. A Leanpub é uma máquina de escrever mágica para autores: simplesmente escreva em texto simples e, para publicar o seu ebook, apenas aperte um botão. É realmente fácil assim.

Aprenda sobre como escrever na Leanpub