Microsserviços em Swift: por onde começar para iniciantes em 2024

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Por que Swift não é apenas desenvolvimento mobile?



Quando se ouve "Swift", a primeira associação são aplicativos iOS. Mas nos últimos anos, Swift tem avançado com confiança para o lado do servidor. E isso não é apenas hype: a Apple está desenvolvendo ativamente o ecossistema, e a comunidade está criando frameworks poderosos. Se você já programa em Swift para iOS e quer expandir seus horizontes — microsserviços em Swift serão seu próximo passo lógico.



Por que microsserviços? Porque é o padrão moderno de construção de backend: serviços pequenos e independentes que são fáceis de escalar e atualizar. E Swift, com seu desempenho, segurança de tipos e sintaxe concisa, é perfeito para isso. Neste artigo, vamos abordar por onde começar a criar microsserviços em Swift, escrever código real e executar nosso primeiro serviço.



O que você precisa saber antes de começar?



Para uma leitura confortável, você precisará de:

  • Conhecimento básico de Swift (variáveis, funções, estruturas)
  • Compreensão de HTTP e REST (pelo menos no nível "há uma requisição — há uma resposta")
  • brew instalado (para macOS) ou Docker (para Linux)

Se faltar algo — não se preocupe, vamos entender ao longo do caminho.



Escolhendo a ferramenta: Vapor — o rei do Swift server-side



No mercado de frameworks server-side para Swift, existem dois principais players: Vapor e Kitura (da IBM). Mas a Kitura, infelizmente, está quase congelada. Já o Vapor está em desenvolvimento ativo, tem uma enorme comunidade e documentação. Portanto, nossa escolha é Vapor.



O Vapor oferece tudo pronto: roteamento, middleware, trabalho com bancos de dados, WebSocket, assincronicidade via async/await. Ideal para construir uma arquitetura de microsserviços em Swift.



Instalação do Vapor Toolbox

Abra o terminal e execute:

brew install vapor

Após a instalação, verifique:

vapor --help

Se você vir a lista de comandos — está tudo certo, pode criar o primeiro projeto.



Criando o primeiro microsserviço: Hello, World!



Nosso primeiro microsserviço será simples: ele receberá uma requisição GET e retornará um JSON. Mas faremos isso corretamente — com uma arquitetura pronta para expansão.



Passo 1. Criando o projeto

vapor new HelloMicroservice --template=authcd HelloMicroservice

A flag --template=auth adicionará uma estrutura básica com autenticação. Para um microsserviço, esta é uma boa prática — já incorporar segurança desde o início.



Passo 2. Estrutura do projeto

Após a criação, você verá a seguinte estrutura:

HelloMicroservice/├── Sources/│   ├── App/│   │   ├── Controllers/│   │   ├── Models/│   │   └── configure.swift│   └── Run/│       └── main.swift├── Tests/├── Dockerfile└── Package.swift

Observe o Dockerfile — este já é um template pronto para conteinerização. Microsserviços sem Docker são como pizza sem queijo.



Passo 3. Escrevendo o primeiro endpoint

Vamos abrir Sources/App/Controllers/UserController.swift (se não existir, vamos criá-lo). Adicione um método simples:

import Vapor

struct HealthController: RouteCollection { func boot(routes: RoutesBuilder) throws { let health = routes.grouped("api", "health") health.get(use: checkHealth) } @Sendable func checkHealth(req: Request) async throws -> HTTPStatus { return .ok }}

Este é o clássico health-check — a base de qualquer microsserviço. Agora vamos registrá-lo no configure.swift:

// no final da função configuretry app.register(collection: HealthController())


Passo 4. Executando e testando

vapor run

Abra o navegador ou terminal:

curl http://localhost:8080/api/health# Resposta: 200 OK

Parabéns! Você a

Blogs

Book Recommendations