0Pricing
Swift Academy · Lezione

Struttura, prodotti e compilazione/test/esecuzione

Apprenda la struttura di SwiftPM (Sources/ e Tests/), i prodotti (eseguibili e librerie) e come compilare, testare ed eseguire tramite CLI.

Struttura, prodotti e compilazione/test/esecuzione è una lezione Swift Academy gratuita su CoddyKit. Questa è la lezione 2 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Swift Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Swift Academy include 3 lezioni in totale.

Panoramica

Questa lezione mostra la struttura di SwiftPM, come i products corrispondono ai target e l'uso della CLI per build/test/run.

Struttura delle cartelle

SwiftPM prevede Sources/ e Tests/. Ogni target ha la propria cartella.

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)

Products e target

I products espongono i target: le librerie servono per il riutilizzo, gli eseguibili per app e CLI. I test si trovano sotto 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)

Libreria ed eseguibile

Una libreria espone API; un eseguibile ha un punto di ingresso main.swift e può dipendere dalla libreria.

// 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"))

Basi della CLI

Utilizzi la CLI: swift build, swift run <Exe> e swift test. Aggiunga -c release per build ottimizzate.

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)

Artefatti e suggerimenti

Gli output si trovano in .build/. Mantenga i target focalizzati e inserisca i test sotto 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)

Eseguire i test

Verifica rapida: quale comando esegue i test?

Riepilogo

Riepilogo: utilizzi la struttura standard Sources/ e Tests/, associ i target ai products e lavori con swift build, swift run e swift test.

Domande Frequenti

La lezione «Struttura, prodotti e compilazione/test/esecuzione» è gratuita?

Sì — il testo completo di «Struttura, prodotti e compilazione/test/esecuzione» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Swift Academy, passa a CoddyKit PRO. Il corso Swift Academy include 3 lezioni in totale.

Cosa imparerò in «Struttura, prodotti e compilazione/test/esecuzione»?

Apprenda la struttura di SwiftPM (Sources/ e Tests/), i prodotti (eseguibili e librerie) e come compilare, testare ed eseguire tramite CLI. Eserciti Swift Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Swift Academy?

Non è richiesta alcuna esperienza precedente. Swift Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 3.

Quanto tempo richiede la lezione «Struttura, prodotti e compilazione/test/esecuzione»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Swift Academy?

Sì. Ogni lezione Swift Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Basi di Swift Package Manager
  2. Struttura, prodotti e compilazione/test/esecuzione
  3. Importazione dei moduli e basi del versionamento semantico
← Torna a Swift Academy