0Pricing
Swift Academy · Leçon

Organisation, produits et compilation/test/exécution

Découvrez l’organisation de SwiftPM (Sources/ et Tests/), les produits (exécutables contre bibliothèques) et la manière de compiler, tester et exécuter avec CLI.

Organisation, produits et compilation/test/exécution est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 3 leçons au total.

Vue d’ensemble

Cette leçon présente l’organisation de SwiftPM, la façon dont les produits correspondent aux cibles, ainsi que l’interface en ligne de commande pour build/test/run.

Organisation des dossiers

SwiftPM attend les dossiers Sources/ et Tests/. Chaque cible possède son propre dossier.

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)

Produits et cibles

Les produits exposent les cibles : les bibliothèques servent à la réutilisation, tandis que les exécutables servent aux applications et aux interfaces en ligne de commande. Les tests se trouvent sous 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)

Bibliothèque ou exécutable

Une library expose des API ; un executable possède un point d’entrée main.swift et peut dépendre de la bibliothèque.

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

Principes de base de l’interface en ligne de commande

Utilisez l’interface en ligne de commande : swift build, swift run <Exe> et swift test. Ajoutez -c release pour obtenir des compilations optimisées.

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)

Artefacts et conseils

Les sorties se trouvent dans .build/. Gardez les cibles spécialisées et placez les tests sous 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)

Exécuter les tests

Vérification rapide : quelle commande exécute les tests ?

Récapitulatif

Récapitulatif : utilisez l’organisation standard Sources/ et Tests/, associez les cibles aux produits et utilisez swift build, swift run et swift test.

Questions Fréquemment Posées

La leçon « Organisation, produits et compilation/test/exécution » est-elle gratuite ?

Oui — le texte complet de « Organisation, produits et compilation/test/exécution » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 3 leçons au total.

Qu'est-ce que j'apprendrai dans « Organisation, produits et compilation/test/exécution » ?

Découvrez l’organisation de SwiftPM (Sources/ et Tests/), les produits (exécutables contre bibliothèques) et la manière de compiler, tester et exécuter avec CLI. Tu pratiques Swift Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Swift Academy ?

Aucune expérience préalable n'est requise. Swift Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 3.

Combien de temps prend la leçon « Organisation, produits et compilation/test/exécution » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Swift Academy ?

Oui. Chaque leçon Swift Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Notions de base de Swift Package Manager
  2. Organisation, produits et compilation/test/exécution
  3. Importation de modules et notions de base du versionnage sémantique
← Retour à Swift Academy