Tech & Data

PHP modular em 2026 — Slim 4 e arquitectura por módulos

Como construir aplicações PHP escaláveis em 2026 com Slim 4, arquitectura modular e auto-discovery de rotas — sem frameworks pesados.

PHP modular em 2026 — Slim 4 e arquitectura por módulos

PHP tem sido enterrado prematuramente mais vezes do que qualquer outra linguagem popular. PHP 8.3 é uma plataforma madura, rápida e expressiva — e a escolha certa para muitos projectos quando usada com boas práticas de arquitectura. Este artigo mostra como construo aplicações PHP modulares em 2026.

Porquê Slim 4 em vez de Laravel ou Symfony

Laravel e Symfony são frameworks excelentes, mas têm uma opinião forte sobre a estrutura do teu projecto. Para projectos pequenos a médios onde quero controlo total da arquitectura, prefiro o Slim 4 — um micro-framework que faz routing, middleware e injecção de dependências, e nada mais.

O Slim 4 obriga-te a pensar na arquitectura, em vez de te esconder atrás de convenções de framework. Para equipas que entendem o que estão a construir, isto é uma vantagem.

Estrutura de módulos com auto-discovery

O padrão que uso divide a aplicação em módulos independentes, cada um com a sua estrutura interna:

modules/
  auth/
    AuthController.php
    AuthModel.php
    routes.php
  products/
    ProductController.php
    ProductModel.php
    routes.php
  orders/
    ...

O ficheiro routes.php de cada módulo devolve um callable que recebe a instância do Slim App e regista as rotas. O bootstrap da aplicação faz glob sobre os módulos e regista tudo automaticamente:

foreach (glob(__DIR__ . '/modules/*/routes.php') as $routes) {
    $fn = require $routes;
    $fn($app);
}

Adicionar um novo módulo não requer alterar nenhum ficheiro existente — apenas criar a pasta e o routes.php. Isto é auto-discovery por convenção.

PHP 8.3 — features que mudam o jogo

  • Typed properties: public readonly string $name; — imutabilidade explícita
  • Enums: tipos de domínio expressivos sem magic strings
  • Named arguments: array_slice(array: $items, offset: 0, length: 10) — código mais legível
  • Match expressions: substitui switch com type safety e sem fall-through
  • Fibers: concorrência cooperativa para I/O-bound sem threads

Quando PHP faz sentido em 2026

PHP modular faz sentido quando: a equipa já conhece PHP bem, o projecto é CRUD-heavy com necessidades de real-time limitadas, e o deployment tem de ser simples (shared hosting, VPS básico sem Kubernetes). Para microserviços de alta performance ou processamento intensivo de dados, Go ou Python são melhores escolhas. Para aplicações web de negócio típicas, PHP 8 + Slim 4 é difícil de bater em produtividade.