Este repositório documenta o aprendizado e os passos seguidos durante os cursos e tutoriais sobre o framework Laravel, além de práticas de construção de APIs. O objetivo é construir uma base sólida em Laravel, desde os conceitos iniciais até tópicos mais avançados, como autenticação, envio de e-mails, testes, transações, e criação de APIs RESTful.
Neste primeiro passo, o foco foi aprender a utilizar o Laravel em sua estrutura básica, abordando o padrão MVC (Model-View-Controller), criação de formulários, e a definição de relacionamentos entre entidades.
- Concluído:
O foco aqui foi explorar tópicos mais avançados, como o uso de transações no banco de dados, o service container do Laravel, envio de e-mails, criação de eventos assíncronos, e testes unitários.
- Concluído:
Na etapa final, o foco foi construir uma API RESTful utilizando Laravel, explorando o uso do Eloquent ORM e as melhores práticas de modelagem de APIs.
- Concluído:
- Alura+: O que é uma API?
- Curso: Laravel: construindo APIs
- Alura+: Boas práticas na Modelagem de APIs REST
- PHP 8.x
- Laravel 8.x
- MySQL/PostgreSQL
- Node.js & NPM (para dependências front-end)
- Composer (gerenciador de dependências PHP)
- JUnit e PHPUnit (para testes)
Durante essa jornada, aprendi desde os conceitos mais básicos do Laravel até as funcionalidades mais avançadas, como:
- MVC (Model-View-Controller): Estrutura fundamental para organizar o código.
- Validação de formulários e gerenciamento de sessões.
- Relacionamentos entre entidades (1:N, N:M, etc).
- Transações no banco de dados para garantir integridade dos dados.
- Service Container para gerenciamento de dependências.
- Envio de e-mails, criação de eventos assíncronos, uploads de arquivos.
- Testes unitários e de integração com PHPUnit.
- Construção de uma API RESTful com Laravel e boas práticas de design de API.
Agora que os conceitos fundamentais foram cobertos, é hora de avançar ainda mais em projetos reais. Algumas ideias de próximos passos incluem:
-
Refinar APIs:
- Implementar autenticação via JWT para proteger endpoints.
- Criar testes automatizados para APIs utilizando PHPUnit.
- Integrar APIs com front-end (React, Vue.js, etc).
-
Melhorar o Front-End:
- Criar interfaces simples com Vue.js ou React e integrá-las com as APIs criadas.
-
Desplegar o projeto:
- Estudar e realizar o deploy da aplicação em servidores como DigitalOcean ou AWS.
- Implementar CI/CD (Integração Contínua / Deploy Contínuo) utilizando GitHub Actions ou GitLab CI.
-
Contribuir com a comunidade:
- Contribuir com projetos open-source no Laravel.
- Criar tutoriais ou artigos para compartilhar o conhecimento adquirido.
Agradecimentos especiais aos cursos da Alura e a outros recursos que ajudaram a construir esse conhecimento:
- Laravel: Framework utilizado para o desenvolvimento de aplicações.
- Alura: Plataforma de ensino que forneceu os cursos.
- GitHub: Para hospedar e versionar o código.