Trilha de estudo
Trilha PHP & Laravel: tudo o que estudar, tópico por tópico
Avaliacao abrangente de PHP e Laravel cobrindo fundamentos do PHP, programacao orientada a objetos, roteamento e controllers do Laravel, Eloquent ORM, autenticacao, autorizacao, filas, eventos, testes, desenvolvimento de APIs, otimizacao de desempenho e deploy em producao.
Resposta curta
Para aprender PHP & Laravel, percorra 6 módulos e 24 tópicos na ordem em que um apoia o próximo. Comece por Fundamentos do PHP e siga para PHP Orientado a Objetos e Fundamentos do Laravel. Use o mapa como checklist, ou meça seu nível e estude só o que falta.
O que você vai estudar
Os tópicos estão agrupados por módulo. Abra um para ver os objetivos e os conceitos-chave.
1 · Fundamentos do PHP4 tópicos
Sintaxe & Basico do PHP
Tags PHP, echo/print, comentarios, declaracao de variaveis com $, superglobais, type juggling, operadores de comparacao (== vs ===), estruturas de controle (if, switch, match)
Objetivos
- Escrever scripts PHP basicos com sintaxe correta
- Compreender type juggling e operadores de comparacao do PHP
Conceitos-chave
- tags PHP
- echo e print
- declaracao de variaveis ($)
- superglobais
- type juggling
- comparacao fraca vs estrita
- estruturas de controle
- expressao match
Tipos de Dados & Sistema de Tipos
Tipos escalares (int, float, string, bool), tipos compostos (array, object), tipos especiais (null, resource), declaracoes de tipo, union types, intersection types, enums (PHP 8.1+), type casting e coercao de tipos
Objetivos
- Utilizar recursos do sistema de tipos do PHP incluindo union e intersection types
- Compreender regras de coercao de tipos e tipagem estrita
Conceitos-chave
- tipos escalares
- tipos compostos
- null e resource
- declaracoes de tipo
- union types
- intersection types
- enums
- type casting
Funcoes & Closures
Declaracoes de funcoes, parametros (por valor/referencia), valores padrao, funcoes variadicas, tipos de retorno, funcoes anonimas, closures (palavra-chave use), arrow functions (fn =>), sintaxe de callable de primeira classe, argumentos nomeados
Objetivos
- Escrever funcoes com declaracoes de tipo e tratamento de parametros adequados
- Utilizar closures e arrow functions para padroes de callback concisos
Conceitos-chave
- declaracoes de funcoes
- passagem por valor vs referencia
- parametros padrao
- funcoes variadicas
- declaracoes de tipo de retorno
- funcoes anonimas
- closures e palavra-chave use
- arrow functions
Arrays & Manipulacao de Strings
Arrays indexados, arrays associativos, arrays multidimensionais, funcoes de array (map, filter, reduce, sort), funcoes de string, expressoes regulares (preg_match, preg_replace), interpolacao de strings, sintaxe heredoc/nowdoc, desestruturacao de arrays
Objetivos
- Manipular arrays usando funcoes nativas do PHP
- Processar e transformar strings com regex e funcoes nativas
Conceitos-chave
- arrays indexados
- arrays associativos
- array_map/filter/reduce
- funcoes de ordenacao
- funcoes de string
- expressoes regulares
- heredoc/nowdoc
- desestruturacao de arrays
2 · PHP Orientado a Objetos4 tópicos
Classes & Objetos
Definicoes de classes, propriedades, metodos, construtores, visibilidade (public/protected/private), membros estaticos, heranca, classes abstratas, propriedades readonly, promocao de construtor, metodos magicos (__construct, __toString, __get, __set, __call)
Objetivos
- Projetar classes com encapsulamento e heranca adequados
- Utilizar recursos do PHP 8.x como promocao de construtor e propriedades readonly
Conceitos-chave
- definicoes de classes
- modificadores de visibilidade
- construtores e promocao
- membros estaticos
- heranca
- classes abstratas
- propriedades readonly
- metodos magicos
Interfaces & Traits
Declaracoes de interface, implementacao de multiplas interfaces, traits para reuso de codigo, resolucao de conflitos de traits, metodos abstratos em traits, constantes de interface, fibers (PHP 8.1+), classes readonly (PHP 8.2+)
Objetivos
- Projetar contratos usando interfaces e compor comportamento com traits
- Resolver conflitos de traits e compreender recursos modernos de classes PHP
Conceitos-chave
- declaracoes de interface
- implementacao de multiplas interfaces
- traits
- resolucao de conflitos de traits
- metodos abstratos em traits
- constantes de interface
- fibers
- classes readonly
Namespaces & Autoloading
Declaracoes de namespace, instrucoes use, aliasing, padrao de autoloading PSR-4, autoloader do Composer, classmap vs PSR-4, spl_autoload_register, estrutura do diretorio vendor, configuracao do composer.json
Objetivos
- Organizar codigo PHP com namespaces seguindo PSR-4
- Configurar autoloading do Composer para projetos
Conceitos-chave
- declaracoes de namespace
- instrucoes use
- aliasing
- padrao PSR-4
- autoloader do Composer
- classmap vs PSR-4
- spl_autoload_register
- composer.json
Tratamento de Erros & Excecoes
Blocos try-catch-finally, hierarquia de excecoes, excecoes customizadas, niveis de erro, set_error_handler, set_exception_handler, Error vs Exception (PHP 7+), interface Throwable, registro de erros, estrategias de tratamento de erros em producao
Objetivos
- Implementar tratamento robusto de erros com hierarquias de excecoes customizadas
- Configurar tratamento de erros para ambientes de desenvolvimento vs producao
Conceitos-chave
- try-catch-finally
- hierarquia de excecoes
- excecoes customizadas
- niveis de erro
- set_error_handler
- Error vs Exception
- interface Throwable
- tratamento de erros em producao
3 · Fundamentos do Laravel4 tópicos
Roteamento no Laravel
Definicoes de rota (GET, POST, PUT, DELETE), parametros de rota, rotas nomeadas, grupos de rotas, route model binding (implicito/explicito), rotas de recurso, rotas de recurso para API, cache de rotas, rotas de fallback, rate limiting
Objetivos
- Definir e organizar rotas do Laravel com agrupamento e nomeacao adequados
- Utilizar route model binding e rotas de recurso para design RESTful
Conceitos-chave
- rotas por verbo HTTP
- parametros de rota
- rotas nomeadas
- grupos de rotas
- route model binding
- rotas de recurso
- cache de rotas
- rate limiting
Controllers & Middleware
Criacao de controllers, controllers de acao unica, resource controllers, injecao de dependencia em controllers, registro e grupos de middleware, parametros de middleware, middleware terminavel, form requests, ciclo de vida da requisicao
Objetivos
- Construir controllers com injecao de dependencia e middleware adequados
- Compreender o ciclo de vida da requisicao e o pipeline de middleware do Laravel
Conceitos-chave
- criacao de controllers
- controllers de acao unica
- resource controllers
- injecao de dependencia
- registro de middleware
- grupos de middleware
- middleware terminavel
- ciclo de vida da requisicao
Templates Blade
Sintaxe Blade ({{ }}, {!! !!}), heranca de templates (@extends, @section, @yield), componentes e slots, diretivas (@if, @foreach, @auth), inclusao de sub-views, injecao de servicos no Blade, diretivas customizadas, componentes anonimos
Objetivos
- Construir layouts de views reutilizaveis com heranca e componentes Blade
- Utilizar diretivas Blade e compreender prevencao de XSS com escape de saida
Conceitos-chave
- sintaxe de saida Blade
- heranca de templates
- componentes e slots
- diretivas de controle
- inclusao de sub-views
- injecao de servicos
- diretivas customizadas
- componentes anonimos
Artisan CLI
Comandos Artisan nativos, criacao de comandos customizados, assinaturas e argumentos de comandos, agendamento de comandos, comandos closure, saida e prompts de comandos, REPL tinker, geracao de boilerplate (make:model, make:controller, etc.)
Objetivos
- Utilizar comandos Artisan efetivamente no fluxo de desenvolvimento
- Criar comandos customizados com assinaturas e agendamento adequados
Conceitos-chave
- comandos nativos
- comandos customizados
- assinaturas de comandos
- agendamento
- comandos closure
- REPL tinker
- geracao de codigo
- E/S de comandos
4 · Camada de Dados do Laravel4 tópicos
Eloquent ORM
Modelos Eloquent, mass assignment, query scopes (local/global), accessors e mutators, attribute casting, soft deletes, eventos de modelo, query builder vs Eloquent, chunking de resultados, iteracao com cursor, model factories
Objetivos
- Construir modelos Eloquent com mass assignment e scopes adequados
- Utilizar accessors, mutators e casts para transformacao de dados
Conceitos-chave
- modelos Eloquent
- protecao de mass assignment
- query scopes
- accessors e mutators
- attribute casting
- soft deletes
- eventos de modelo
- query builder
Migrations & Schema Builder
Criacao de migrations, metodos do schema builder (create, table, drop), tipos de coluna, indices e chaves estrangeiras, rollback de migrations, seeders e factories, modificadores de coluna (nullable, default, unique), squashing de migrations
Objetivos
- Projetar schemas de banco de dados usando migrations do Laravel
- Utilizar seeders e factories para geracao de dados de teste
Conceitos-chave
- criacao de migrations
- schema builder
- tipos de coluna
- indices e chaves estrangeiras
- rollback de migrations
- seeders
- factories
- squashing de migrations
Relacionamentos Eloquent
Um-para-um, um-para-muitos, muitos-para-muitos, has-many-through, relacoes polimorficas, eager loading (with/load), lazy loading, problema N+1, tabelas pivot, contagem de relacionamentos, restricoes em eager loads, atualizacao de timestamps do pai
Objetivos
- Definir e consultar relacionamentos Eloquent corretamente
- Prevenir problemas N+1 com estrategias de eager loading
Conceitos-chave
- hasOne/hasMany
- belongsTo/belongsToMany
- has-many-through
- relacoes polimorficas
- eager loading
- problema N+1
- tabelas pivot
- consultas em relacionamentos
Validacao
Regras de validacao, classes form request, regras de validacao customizadas, validacao condicional, validacao de arrays, mensagens de erro, validacao de dados aninhados, regra bail, hooks apos validacao, validacao de requisicoes API vs web
Objetivos
- Implementar validacao abrangente usando form requests e regras customizadas
- Tratar erros de validacao para contextos web e API
Conceitos-chave
- regras de validacao
- form requests
- regras customizadas
- validacao condicional
- validacao de arrays
- mensagens de erro
- validacao aninhada
- validacao API vs web
5 · Laravel Avancado4 tópicos
Autenticacao
Scaffolding de autenticacao do Laravel, guards, providers, Sanctum para tokens de API, Passport para OAuth2, multi-auth, remember me, verificacao de email, redefinicao de senha, autenticacao social (Socialite), autenticacao de dois fatores
Objetivos
- Implementar autenticacao com Sanctum ou Passport para diferentes casos de uso
- Configurar autenticacao multi-guard e login social
Conceitos-chave
- guards e providers
- tokens de API com Sanctum
- OAuth2 com Passport
- multi-auth
- verificacao de email
- redefinicao de senha
- Socialite
- autenticacao de dois fatores
Autorizacao
Gates e policies, definicao de habilidades, autorizacao de acoes em controllers, diretivas de autorizacao no Blade, auto-descoberta de policies, autorizacao de recursos, usuarios convidados, respostas de policy, autorizacao via middleware, padroes de controle de acesso baseado em funcoes
Objetivos
- Implementar autorizacao granular com gates e policies
- Projetar padroes de controle de acesso baseado em funcoes no Laravel
Conceitos-chave
- gates
- policies
- definicao de habilidades
- autorizacao em controllers
- diretivas @can no Blade
- auto-descoberta de policies
- respostas de policy
- controle de acesso baseado em funcoes
Filas & Jobs
Drivers de fila (Redis, SQS, banco de dados), criacao de jobs, despacho de jobs, middleware de jobs, encadeamento de jobs, jobs em lote, rate limiting, jobs com falha e tentativas, dashboard Horizon, queue workers e supervisord
Objetivos
- Projetar pipelines de processamento assincrono com filas do Laravel
- Tratar falhas em jobs, tentativas e monitoramento com Horizon
Conceitos-chave
- drivers de fila
- criacao de jobs
- padroes de despacho
- middleware de jobs
- encadeamento de jobs
- jobs em lote
- tratamento de falhas em jobs
- Horizon
Eventos & Listeners
Classes de eventos, classes de listeners, descoberta de eventos, listeners enfileirados, subscribers de eventos, observers de modelo, broadcasting de eventos (Pusher, WebSocket), canais de broadcast, canais privados vs canais de presenca, padroes de arquitetura orientada a eventos
Objetivos
- Construir sistemas desacoplados usando eventos e listeners do Laravel
- Implementar recursos em tempo real com broadcasting de eventos
Conceitos-chave
- classes de eventos
- classes de listeners
- descoberta de eventos
- listeners enfileirados
- subscribers de eventos
- observers de modelo
- broadcasting
- autorizacao de canais
6 · Producao & Qualidade4 tópicos
Testes
PHPUnit no Laravel, testes de feature vs testes unitarios, testes HTTP (get, post, assertStatus), testes de banco de dados (RefreshDatabase, assertDatabaseHas), mocking e faking (Mail::fake, Queue::fake, Event::fake), testes de navegador com Dusk, factories de teste, testes de endpoints de API, estrategias de cobertura de testes
Objetivos
- Escrever testes de feature e unitarios abrangentes para aplicacoes Laravel
- Utilizar mocking, faking e assertions de banco de dados efetivamente
Conceitos-chave
- testes de feature vs unitarios
- helpers de teste HTTP
- assertions de banco de dados
- mocking e faking
- factories de teste
- testes de navegador com Dusk
- testes de API
- organizacao de testes
Desenvolvimento de APIs
API resources e resource collections, versionamento de API, respostas JSON, paginacao, rate limiting, autenticacao de API (tokens Sanctum), configuracao de CORS, documentacao OpenAPI/Swagger, melhores praticas RESTful, tratamento de erros de API, atributos condicionais em resources
Objetivos
- Construir APIs RESTful com transformacao de recursos e paginacao adequados
- Implementar estrategias de versionamento e autenticacao de API
Conceitos-chave
- API resources
- resource collections
- versionamento de API
- paginacao
- rate limiting
- tokens Sanctum
- CORS
- design RESTful
Otimizacao de Desempenho
Estrategias de cache (Redis, Memcached, arquivo), otimizacao de queries, lazy collections, indexacao de banco de dados, cache de config/rotas/views, OPcache, otimizacao de filas, profiling com Telescope e Debugbar, integracao com CDN, cache de respostas, pooling de conexoes de banco de dados
Objetivos
- Implementar estrategias de cache em multiplas camadas de uma aplicacao Laravel
- Fazer profiling e otimizar queries e desempenho da aplicacao
Conceitos-chave
- estrategias de cache
- otimizacao de queries
- lazy collections
- indexacao de banco de dados
- cache de config/rotas
- OPcache
- profiling com Telescope
- cache de respostas
Deploy & DevOps
Laravel Forge, Envoyer, Docker com Laravel Sail, configuracao de ambiente (.env), deploy com zero downtime, configuracao de Nginx/Apache, SSL/TLS, supervisor para queue workers, pipelines de CI/CD, health checks, logging com Monolog, Laravel Vapor (serverless)
Objetivos
- Fazer deploy de aplicacoes Laravel com estrategias de zero downtime
- Configurar infraestrutura de producao incluindo filas, cache e monitoramento
Conceitos-chave
- Forge e Envoyer
- Docker e Sail
- configuracao de ambiente
- deploy com zero downtime
- configuracao de servidor web
- supervisor
- pipelines de CI/CD
- Laravel Vapor
Níveis: Júnior, Pleno, Sênior e Especialista
Explique com suas palavras
Corrigido por IA · sem cadastro · 1 perguntaSem alternativas para chutar: você escreve, a IA corrige com a rubrica do tópico e diz em que nível sua resposta está.
Já estuda PHP & Laravel?
A avaliação mede tópico por tópico, e o plano pula o que você já sabe.
Aberto para ler. A conta só é necessária para ser medido.
Perguntas frequentes
Por onde começar a estudar PHP & Laravel?
Comece por Fundamentos do PHP: Sintaxe & Basico do PHP, Tipos de Dados & Sistema de Tipos e Funcoes & Closures. O mapa ordena os tópicos pelo que depende de quê, então cada um prepara o seguinte.
Quanto tempo leva uma avaliação completa de PHP & Laravel?
Uma avaliação completa desta trilha leva cerca de 45 minutos. O tempo de estudo depende de onde você começa; o diagnóstico mostra quais tópicos você pode pular.
Preciso de conta para usar esta página?
Não. O mapa, os objetivos e os conceitos-chave são abertos. A conta só é necessária para ser medido, ver seu gap por tópico e receber um plano.