0Pricing
Swift Academy · Aula

Estrutura, produtos e compilação/teste/execução

Aprenda a estrutura do SwiftPM (Sources/ e Tests/), os produtos (executáveis versus bibliotecas) e como compilar, testar e executar com CLI.

Estrutura, produtos e compilação/teste/execução é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 2 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Swift Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Swift Academy inclui 3 aulas no total.

Visão geral

Esta lição mostra a estrutura do SwiftPM, como os produtos correspondem aos destinos e a CLI para compilar/testar/executar.

Estrutura de pastas

O SwiftPM espera as pastas Sources/ e Tests/. Cada destino tem sua própria pasta.

let tree = """
MyPkg/
├─ Package.swift
├─ Sources/
│  ├─ MyLib/            // library target sources
│  │  └─ MyLib.swift
│  └─ MyApp/            // executable target sources (main.swift)
│     └─ main.swift
└─ Tests/
   ├─ MyLibTests/
   │  └─ MyLibTests.swift
   └─ MyAppTests/
      └─ MyAppTests.swift
"""
print(tree)

Produtos e destinos

Os produtos expõem destinos: bibliotecas para reutilização e executáveis para aplicativos/CLIs. Os testes ficam em testTarget.

let manifest = """
// Package.swift (illustrative)
import PackageDescription
let package = Package(
  name: "MyPkg",
  products: [
    .library(name: "MyLib", targets: ["MyLib"]),
    .executable(name: "MyApp", targets: ["MyApp"])
  ],
  targets: [
    .target(name: "MyLib"),
    .executableTarget(name: "MyApp", dependencies: ["MyLib"]),
    .testTarget(name: "MyLibTests", dependencies: ["MyLib"])
  ]
)
"""
print(manifest)

Biblioteca vs executável

Uma biblioteca expõe APIs; um executável tem um ponto de entrada main.swift e pode depender da biblioteca.

// Library code (Sources/MyLib/MyLib.swift)
public struct Greeter {
    public init() {}
    public func hello(_ name: String) -> String { "Hello, \\(name)" }
}

// Executable entry (Sources/MyApp/main.swift)
let g = Greeter()
print(g.hello("World"))

Noções básicas da CLI

Use a CLI: swift build, swift run <Exe> e swift test. Adicione -c release para obter compilações otimizadas.

let cmds = """
# Build (debug by default)
swift build

# Run an executable product
swift run MyApp

# Execute tests (XCTest)
swift test

# Release build (optimized)
swift build -c release
"""
print(cmds)

Artefatos e dicas

As saídas ficam em .build/. Mantenha os destinos concentrados e coloque os testes em Tests/<Target>Tests.

let notes = """
Artifacts live under .build/:
  • debug/ and release/ contain compiled products
  • x86_64-apple-macosx / arm64-apple-* vary by platform/arch
Tips:
  • Keep one target per responsibility
  • Name products simply; match target folders
  • Put tests in Tests/<TargetName>Tests
"""
print(notes)

Executar testes

Verificação rápida: qual comando executa os testes?

Recapitulação

Recapitulação: use a estrutura padrão Sources/ e Tests/, associe destinos a produtos e trabalhe com swift build, swift run e swift test.

Perguntas Frequentes

A aula “Estrutura, produtos e compilação/teste/execução” é grátis?

Sim — o texto completo de “Estrutura, produtos e compilação/teste/execução” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Swift Academy, atualize para CoddyKit PRO. O curso de Swift Academy inclui 3 aulas no total.

O que vou aprender em “Estrutura, produtos e compilação/teste/execução”?

Aprenda a estrutura do SwiftPM (Sources/ e Tests/), os produtos (executáveis versus bibliotecas) e como compilar, testar e executar com CLI. Você pratica Swift Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Swift Academy?

Nenhuma experiência prévia é necessária. Swift Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 3.

Quanto tempo leva a aula “Estrutura, produtos e compilação/teste/execução”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Swift Academy?

Sim. Cada aula de Swift Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Fundamentos do Swift Package Manager
  2. Estrutura, produtos e compilação/teste/execução
  3. Importação de módulos e fundamentos do versionamento semântico
← Voltar para Swift Academy