Estructura, productos y compilación/pruebas/ejecución
Aprenda la estructura de SwiftPM (Sources/ y Tests/), los productos (ejecutables frente a bibliotecas) y cómo compilar, probar y ejecutar desde la CLI.
Estructura, productos y compilación/pruebas/ejecución es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 2 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 3 lecciones en total.
Descripción general
Esta lección muestra la estructura de SwiftPM, cómo los productos se asignan a los targets y la CLI para build/test/run.
Estructura de carpetas
SwiftPM espera Sources/ y Tests/. Cada target tiene su propia carpeta.
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)Productos y targets
Los productos exponen targets: bibliotecas para reutilización y ejecutables para aplicaciones/CLIs. Las pruebas se encuentran bajo 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 frente a ejecutable
Una biblioteca expone API; un ejecutable tiene un punto de entrada main.swift y puede depender de la 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"))Conceptos básicos de la CLI
Use la CLI: swift build, swift run <Exe> y swift test. Añada -c release para obtener compilaciones optimizadas.
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)Artefactos y consejos
Las salidas se encuentran en .build/. Mantenga los targets centrados y coloque las pruebas bajo 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)Ejecutar pruebas
Comprobación rápida: ¿Qué comando ejecuta las pruebas?
Resumen
Resumen: Use la estructura estándar de Sources/ & Tests/, relacione los targets con los productos y trabaje con swift build, swift run y swift test.
Preguntas frecuentes
¿La lección «Estructura, productos y compilación/pruebas/ejecución» es gratis?
Sí — el texto completo de «Estructura, productos y compilación/pruebas/ejecución» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Estructura, productos y compilación/pruebas/ejecución»?
Aprenda la estructura de SwiftPM (Sources/ y Tests/), los productos (ejecutables frente a bibliotecas) y cómo compilar, probar y ejecutar desde la CLI. Practicas Swift Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Swift Academy?
No se requiere experiencia previa. Swift Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 3.
¿Cuánto tiempo toma la lección «Estructura, productos y compilación/pruebas/ejecución»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Swift Academy?
Sí. Cada lección de Swift Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Fundamentos de Swift Package Manager
- Estructura, productos y compilación/pruebas/ejecución
- Importación de módulos y fundamentos del versionado semántico