Układ, produkty i budowanie/testowanie/uruchamianie
Poznajcie układ SwiftPM (Sources/ i Tests/), produkty (pliki wykonywalne i biblioteki) oraz budowanie, testowanie i uruchamianie za pomocą CLI.
Układ, produkty i budowanie/testowanie/uruchamianie to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 2 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 3 lekcji w sumie.
Omówienie
Ta lekcja przedstawia układ SwiftPM, sposób mapowania produktów na targety oraz interfejs wiersza poleceń do wykonywania operacji build/test/run.
Układ folderów
SwiftPM wymaga folderów Sources/ i Tests/. Każdy target ma własny folder.
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)Produkty i targety
Produkty udostępniają targety: biblioteki służą do ponownego użycia, a pliki wykonywalne do aplikacji i narzędzi CLI. Testy znajdują się w elemencie 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)Biblioteka a plik wykonywalny
Biblioteka udostępnia interfejsy API, a plik wykonywalny ma punkt wejścia main.swift i może zależeć od biblioteki.
// 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"))Podstawy interfejsu CLI
Należy używać interfejsu CLI: swift build, swift run <Exe> oraz swift test. Aby uzyskać zoptymalizowane kompilacje, należy dodać -c release.
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)Artefakty i wskazówki
Wyniki znajdują się w folderze .build/. Targety powinny mieć jasno określone zadania, a testy należy umieszczać w folderze 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)Uruchamianie testów
Szybkie sprawdzenie: Które polecenie uruchamia testy?
Podsumowanie
Podsumowanie: należy używać standardowego układu Sources/ i Tests/, mapować targety na produkty oraz korzystać z poleceń swift build, swift run i swift test.
Często zadawane pytania
Czy lekcja „Układ, produkty i budowanie/testowanie/uruchamianie” jest bezpłatna?
Tak — pełny tekst „Układ, produkty i budowanie/testowanie/uruchamianie” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 3 lekcji w sumie.
Co nauczysz się w „Układ, produkty i budowanie/testowanie/uruchamianie”?
Poznajcie układ SwiftPM (Sources/ i Tests/), produkty (pliki wykonywalne i biblioteki) oraz budowanie, testowanie i uruchamianie za pomocą CLI. Ćwiczysz Swift Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Swift Academy?
Nie wymagamy żadnego doświadczenia. Swift Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 3.
Ile czasu zajmuje lekcja „Układ, produkty i budowanie/testowanie/uruchamianie”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Swift Academy?
Tak. Każda lekcja Swift Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Podstawy Swift Package Manager
- Układ, produkty i budowanie/testowanie/uruchamianie
- Importowanie modułów i podstawy wersjonowania semantycznego