Xcode — oficiální integrované vývojové prostředí (IDE) od Apple pro vytváření aplikací pro iOS, macOS, watchOS, tvOS a visionOS. Xcode zahrnuje editor kódu, Interface Builder, simulátory zařízení, kompilátor Swift/Objective-C, profiler Instruments a systém správy verzí. Xcode na Apple Developer — výchozí bod pro stažení IDE a dokumentace.
Hlavní body
Xcode IDE — vývojové prostředí Apple poskytující úplný cyklus vytváření aplikací: od psaní kódu po publikaci v App Store. První verze Xcode vyšla v roce 2003 jako náhrada za Project Builder. Aktuální verzí je Xcode 16 (2025), pracující výhradně na macOS s minimální verzí Sonoma 14.5.
Xcode spojuje v jednom okně editor kódu s automatickým doplňováním a refaktorováním, Interface Builder pro vizuální návrh UI, Simulator pro testování na emulátorech a Instruments pro profilování. Podle Stack Overflow Developer Survey 2025 používá Xcode 67 % vývojářů platforem Apple, zbytek používá AppCode (ukončeno) a VS Code s rozšířeními.
Xcode a Swift jsou úzce propojeny: nová verze Xcode vychází současně s vydáním Swift, obsahuje aktualizovaný SourceKit-LSP pro automatické doplňování a kontrolu typů. Od Xcode 15+ Apple zavedl Swift Macro Expansion — vestavěné ladění maker Swift — a přísný režim Swift Concurrency (bezpečnost data-race v Xcode 16).
Projekt Xcode (.xcodeproj) obsahuje soubory zdrojového kódu, zdroje (obrázky, písma, zvuky), nastavení sestavení a konfigurace schémat. Alternativní formát — Package (.swiftpm) pro knihovny přes Swift Package Manager, který Xcode nativně podporuje od Xcode 11.
| Soubor / složka | Účel |
|---|---|
| AppDelegate.swift | Vstupní bod aplikace, správa životního cyklu UIApplication |
| Main.storyboard | Vizuální graf obrazovek s přechody (segues) a propojeními ViewController |
| Info.plist | Konfigurace aplikace: bundle identifier, verze, oprávnění, podporované orientace |
| Assets.xcassets | Katalog zdrojů: ikony, barvy, obrázky pro všechna rozlišení (1x, 2x, 3x) |
| LaunchScreen.storyboard | Spouštěcí obrazovka zobrazená před načtením hlavního rozhraní |
Workspace (.xcworkspace) — kontejner pro více projektů a připojených závislostí přes CocoaPods nebo Swift Packages. Doporučená struktura: Workspace obsahuje projekt aplikace a balíčky SPM, knihovny Swift se připojují přes Package Dependencies v hlavním projektu.
Interface Builder — vizuální editor Xcode pro vytváření rozhraní ve formátech XIB (samostatné view) a Storyboard (graf obrazovek). Vývojář přetahuje UI prvky z knihovny (Library) na plátno, konfiguruje omezení Auto Layout a vytváří propojení (Outlets, Actions) s kódem přes Assistant Editor.
Storyboard vs SwiftUI: Apple doporučuje SwiftUI pro nové projekty, ale Interface Builder zůstává hlavním nástrojem pro UIKit-legacy. Storyboard podporuje Size Classes (přizpůsobení pro iPad a iPhone), Preview Assistant (okamžitý náhled) a Variants (přizpůsobení UI pro různá zařízení). V Xcode 16 získal Interface Builder podporu pro SwiftUI Previews ve stejném okně.
Auto Layout — systém omezení pro adaptivní rozhraní. Každý constraint definuje vztah mezi view (rovnost šířky, mezera, centrování). Konflikty constraintů se zobrazují v Issue Navigator s návrhy oprav. Safe Area Insets automaticky zohledňují Dynamic Island, kameru a Home Indicator.
Scheme v Xcode definuje sadu akcí: Build, Run, Test, Profile, Analyze, Archive. Každé schéma je vázáno na target a konfiguraci (Debug, Release). Vývojář vytváří více schémat pro různé scénáře: Development (Debug, simulátor), Staging (Release, testovací zařízení), Production (Release, Archive).
Build Configurations — Debug a Release s různými optimalizacemi. Debug překládá bez optimalizací (-O0) s úplnými ladicími informacemi (dSYM). Release zahrnuje optimalizace (-Os) a přepínač strip pro zmenšení velikosti binárního souboru. Preprocessor Macros (DEBUG=1) umožňují správu logování pomocí podmíněného překladu.
Run Script Build Phases — vlastní shell skripty ve fázích sestavení: generování kódu (Sourcery, SwiftGen), lintování (SwiftLint), obfuskace (Mach-O). Pořadí Build Phases je důležité — skripty se spouštějí po překladu, ale před code signing. Xcode 16 přidal Parallel Build Phases pro urychlení CI/CD.
Xcode Simulator — emulátor zařízení Apple umožňující spouštět a testovat aplikace bez fyzického zařízení. Podporovány jsou všechny modely iPhone, iPad, Apple Watch, Apple TV a Vision Pro s různými verzemi OS. Simulátor neemuluje všechny hardwarové funkce (kamera, Bluetooth, TrueDepth), ale pokrývá 90 % testovacích scénářů.
Funkce simulátoru: rychlý start (sekundy oproti minutám na fyzickém zařízení), snímky stavu (uložení přesného stavu před testem), simulace podmínek (slabý signál, pomalá síť, nízká baterie). Pro ladění push notifikací podporuje simulátor odesílání APNS přetažením souboru .apns na okno simulátoru.
Xcode 16 Simulator získal podporu Game Mode pro testování výkonu grafiky, SwiftUI Previews v reálném čase a rozšířenou sadu metrik: FPS, teplota zařízení, využití GPU. Od Xcode 16 všechny simulátory běží nativně na Apple Silicon, bez Rosetty.
Instruments — vestavěný nástroj pro profilování v Xcode pro analýzu výkonu aplikací na reálných zařízeních a simulátorech. Instruments poskytuje sadu stopovačů (nástrojů) pro CPU, paměť, síť, disk, grafiku (Metal, OpenGL), spotřebu energie a Swift Concurrency.
Hlavní nástroje profilování: Time Profiler (které funkce spotřebovávají CPU), Allocations (úniky paměti a retain cycles), Leaks (detekce cyklických referencí), Network (HTTP provoz a DNS), Energy Log (spotřeba baterie podle komponent). Instruments podporuje porovnávání stop mezi různými verzemi aplikace.
Swift Concurrency nástroje v Xcode 16: Swift Tasks (graf všech async/await úloh a stavů), Actors (konflikty izolace data-race), Custom Instruments přes SwiftPackage. Tyto stopovače pomáhají ladit data-race a pochopit, které části aplikace blokují hlavní vlákno.
Často kladené otázky
Xcode funguje pouze na macOS. Oficiální verze pro Windows neexistuje. Pro vývoj iOS na Windows se používají alternativy: Visual Studio s Xamarin/Maui (vyžaduje Mac build host), Flutter (iOS build přes codemagic/Mac mini) nebo virtuální stroj macOS (porušuje licenční smlouvu Apple).
Verze Swift v Xcode je pevná a aktualizuje se s novou verzí IDE. Změna Swift je možná pouze instalací několika Xcode (např. Xcode 15 pro Swift 5.9 a Xcode 16 pro Swift 6) nebo přes Swift Toolchain ze Swift.org. Výběr toolchain: Xcode → Toolchains → Swift Development Toolchain.
SwiftUI Preview — mechanismus živého vykreslování rozhraní SwiftUI uvnitř Xcode. Kód je zabalen do makra #Preview a změny UI se okamžitě zobrazí na plátně (Canvas). Preview podporuje různá zařízení, tmavý/světlý režim, metriky přístupnosti a stavy dat. Nevyžaduje sestavení celého projektu.
Hlavní metody: Parallel Builds (počet současných překladů), Build Cache (ccache nebo Xcode 16 Incremental Build), Mutable Optimization (Debug s -O0), Swift Strict Concurrency (minimální kontroly). Užitečné je také vypnout Previews pro moduly nevyžadující UI a optimalizovat závislosti SPM.
Hlavní alternativy: VS Code s SourceKit-LSP (lehký editor pro Swift), AppCode (ukončen v 2024), Command Line s textovým editorem + xcodebuild pro sestavení. Pro multiplatformní vývoj se používají Flutter (VS Code) a React Native (VS Code). Archivace a publikace v App Store však vyžaduje Xcode.
Shrnutí
Vyvineme mobilní aplikaci na klíč
IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.
Přečtěte si také