PHP - Criando e consumindo API RESTful


Sobre

Curso que aborda o desenvolvimento Fullstack, ou seja, estuda-se tanto o back-end quanto o front-end. O intuito dessas aulas é criar uma API usando o conceito de REST e consumi-la usando uma simples aplicação SPA.

Nossa API é criada usando os métodos POST, PUT, GET e DELETE, estabelecendo, assim, uma rota para cada tipo de requisição.

Usamos a arquitetura MVC para o desenvolvimento de toda aplicação back-end e utilizamos o software Postman para testar nossa API.

O back-end é inteiramente construído usando o PHP com o sistema de autoload/PSR-4. Além disso, criamos uma arquitetura que protege nosso código de tudo que vai ficar público no servidor.

Já o front-end é construído utilizando uma versão modificada do Bootstrap, com requisições AJAX na rota da API.

Ao término do curso, temos uma aplicação que cadastra o ID, o título, a descrição e o vídeo do Youtube.

Esse curso é essencial para quem está iniciando com PHP e também para todos os desenvolvedores que precisam aprender a trabalhar com API REST.

Glossário

Fullstack – Desenvolvedor que trabalha com o front-end e back-end.
Back-end – Desenvolvedor que trabalha com a programação no servidor, comunicação com banco de dados, entre outros.
Front-end – Desenvolvedor que trabalha com a interface e interação dos usuários na aplicação.
SPA (Single-Page Application) – Aplicação/site que contém todo seu conteúdo em uma única página. Normalmente, utiliza um sistema de rotas para requisitar componentes (formulários, tabelas, textos etc.).
REST (Representational State Transfer) – Conjunto de regras utilizadas na comunicação de aplicações.
API (Application Programming Interface) – Rota que permite que outros desenvolvedores utilizem recursos de uma aplicação, ou seja, por meio de uma API é possível oferecer algumas funcionalidades de sua aplicação a outros desenvolvedores sem que eles tenham acesso direto a sua base de dados.
MVC (Model-View-Controller) – Padrão de desenvolvimento de software que consiste na separação de responsabilidades dentro da aplicação.
AJAX (Asynchronous JavaScript and XML) – Recurso disponível no Javascript, que possibilita fazer requisições sem a necessidade de submeter a página novamente, ou seja, requisições assíncronas.


Requisitos

Conhecimento básico em HTML, CSS e Javascript.


Conteúdo do curso

Os ícones na cor azul, são prévias gratuitas. Após a matrícula, as aulas deverão ser acessadas pelo menu > Student, e não nessa página.

  • Entendendo o projeto
    • Explicando o projeto 06:25
    • Entendendo a estrutura 12:54
    • Pequena documentação 05:39
    • Entendendo um pouco sobre restful 04:43
    • PSR-0 06:09
    • Projeto de interface 01:29
    • Softwares 01:00
    • Download código 01:00
  • Back-end
    • Criando a entidade 08:40
    • Configurando o autoload 09:49
    • Configurações básicas da API 08:09
    • Criando a rota da API 12:02
    • Criando os métodos na controladora 04:10
    • Finalizando a rota 11:18
    • Convertendo o array em entidade 09:09
    • Validando os dados 11:48
    • Persistindo JSON em array 13:01
    • Lendo e convertendo o arquivo de texto 15:00
    • Corrigindo erros e explicando a API 06:25
    • Retornando o último ID 03:57
    • Retornando por ID 07:22
    • Removendo registros 06:54
    • Alterando registros 05:56
    • Validação e correção 07:57
  • Front-end
    • Instalando o Bootstrap 07:45
    • Criando o cabeçalho 06:18
    • Criando a logo do projeto 08:56
    • Criando o template dos cards 08:51
    • Criando o formulário de cadastro 12:08
    • Criando o modal de visualização 05:05
    • Validando o formulário 11:23
    • Testes e correções 02:32
    • Cadastrando um novo game 12:56
    • Lendo todos os registros 11:38
    • Listando games ao fazer cadastro 01:19
    • Removendo registros 07:08
    • Modal de visualização 11:29
    • Destruindo o conteúdo do modal 02:55
    • Modal edição 04:13
    • Editando o game 05:33
    • Testando o cadastro 04:56
    • Conclusão 02:09

Galeria

Resultado final

  • Página index.html, responsável por exibir todas as informações no front-end

    Página index.html, responsável por exibir todas as informações no front-end

  • Javascript com requisições jQuery AJAX, validações e funções

    Javascript com requisições jQuery AJAX, validações e funções

  • Modelo PHP, responsável por gerenciar os dados cadastrados

    Modelo PHP, responsável por gerenciar os dados cadastrados

  • Controladora PHP, responsável por validar e chamar a Model

    Controladora PHP, responsável por validar e chamar a Model

  • API PHP, Endpoint contendo validação e formatação para retorno do JSON

    API PHP, Endpoint contendo validação e formatação para retorno do JSON

  • Página HTML responsiva com os itens cadastrados via API

    Página HTML responsiva com os itens cadastrados via API

  • Modal Bootstrap para cadastro e edição via API

    Modal Bootstrap para cadastro e edição via API

  • Modal Bootstrap para visualização do jogo, retornado via API

    Modal Bootstrap para visualização do jogo, retornado via API


Depoimentos

Oiramira

Ótimo curso! Superou todas as minhas expectativas.


Rodrigo Santos

Curso muito bom, melhor que muito curso pago, nunca tinha visto uma API com PHP puro assim. parabéns.


Gian Lucas da Silva Ramalho

Muito bom o curso, me ajudou muito, agradeço ao professor pelo curso gratuito e de qualidade.


Carlos Mendes

deu para aumentar o meu leque de conhecimentos de php


DIEGO REIS JACAUNA

Excelente didática!!! Parabéns pelo curso. Ajudou bastante no meu aprendizado!!


Renato Lopes

Já trabalho na área e me inscrevi no curso, para agregar conhecimento. Curso de excelente didática e conteúdo. Aprendi muito!!! Parabéns


Free

Materiais com 05:08 hrs

Não possui certificado

42 Aulas

5.0

347 Alunos

Suporte para Mobile

Gunnar Correa

Autodidata, Graduado em Desenvolvimento Web (FIPP), Especialista em Tecnologias na Educação (Unoeste) e Pós-graduando em Segurança da Informação (Universidade Cruzeiro do Sul). Começou seus estudos na área de programação quando era criança, e atualmente está estudando desenvolvimento de jogos. É CEO do portal SatellaSoft, criado em 2009 com o intuito de compartilhar conhecimento de forma gratuita e inédita.
Lattes | Site

Últimos Alunos

Compartilhe

Resumo do curso


  • Explicando o projeto 06:25
  • Projeto de interface 01:29
  • Criando os métodos na controladora 04:10
  • Criando a logo do projeto 08:56
  • Listando games ao fazer cadastro 01:19

Entrar

Preencha corretamente todos os campos.