~/questoes/programacao
Os controladores são a camada intermediária que recebe as requisições HTTP e orquestra toda a lógica necessária para processá-las. Em uma API RESTful, eles implementam as ações CRUD (Create, Read, Update, Delete) mapeando cada operação a um método HTTP específico: GET para ler, POST para criar, PUT/PATCH para atualizar e DELETE para remover.
Os controladores orquestram a lógica das requisições HTTP e implementam as operações CRUD de forma estruturada. Eles recebem dados do cliente, validam informações, interagem com o banco através dos Models e retornam respostas JSON apropriadas, sendo o coração da lógica de negócio da API.
Exato! Os controladores orquestram (organizam e coordenam) toda a lógica que envolve requisições HTTP e implementam as quatro operações CRUD de forma clara e estruturada.
Autenticação e permissões são gerenciadas por Middleware e políticas de autorização no Laravel, não pelos controladores. O controlador pode usar essas autorizações, mas não é sua responsabilidade principal gerenciá-las.
A estrutura e versionamento do banco de dados são responsabilidade das Migrations no Laravel, não dos controladores. Migrations controlam o schema, enquanto controladores trabalham com os dados já estruturados.
Renderizar templates HTML é trabalho das Views em uma aplicação tradicional com Laravel. Em uma API RESTful, os controladores retornam JSON puro, não interfaces visuais.