Xcode
Xcode je vývojové prostředí (Integrated Development Environment, zkratka IDE) společnosti Apple, které obsahuje balíček profesionálních vývojářských nástrojů pro vývoj softwarových aplikací na platformy iOS a macOS. Nejnovější dostupná oficiální verze je 10.3, ta umožňuje vyvíjet aplikace pro verze operačních systémů iOS 12 a macOS Mojave. Apple ho nabízí volně ke stažení z App Store, ale pouze pro operační systémy macOS.

Xcode je dostupný v programovacím jazyce Swift.

Vlastnosti 
Xcode obsahuje celou uživatelskou dokumentaci pro oba operační systémy a spoustu vlastností a aplikací popsaných níže. Xcode podporuje programovací jazyky C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, Rez a Swift.

LLVM kompilátor 
LLVM kompilátor je založený na open sourcovém projektu LLVM.org. Tento projekt tvoří kolekce technologií pro optimalizaci a generaci zdrojového kódu. LLVM byl představen již v Xcode 3.2 a mohl se používat v Xcode projektech spolu s GCC, ale od Xcode řady 5.0 se Apple uchýlil k používání pouze LLVM, jelikož to znamenal krok vpřed v kompilaci kódu. Hlavní pokrok LLVM totiž zavádí ve stavbě kompilačních technologií jakožto sadě modulárních knihoven, z nichž se následně dá kompilátor sestavit. To umožňuje rychlejší tvorbu specializovaných kompilátorů, které lze snadno inovovat. V Xcode LLVM kompilátor používá Clang jako front end k parsování zdrojového kódu, který přeměňuje na “mezi kód”. Ten je za pomocí LLVM vrstvy, která generuje kód, přeměněn na finální strojový kód.

LLDB debugger 
LLDB představuje vysoce výkonný debugger nové generace. Je vyvíjen po boku výše zmíněného projektu LLVM, a tak je postaven na stejné myšlence, to znamená, že je sestaven ze sady komponent, které skvěle spolupracují s již existujícími knihovnami v LLVM. Od Xcode 4.5 je LLDB jediným debuggerem v balíčku a plně nahrazuje standardní GDB. LLDB je integrován v Xcode a je dostupný přes jeho UI. Tento nástroj ve standardní instalaci poskytuje rozsáhlou sadu příkazů kompatibilní se známými příkazy z GDB.

iOS Simulator 
Xcode dovoluje spouštění a testování vyvíjených aplikací na samotném zařízení, ale pouze za předpokladu, že má vývojář zaplacený Apple Developer Program. V opačném případě lze použít aplikaci iOS Simulator, která je součástí Xcode. Ta dovoluje počítači simulovat iPhone nebo iPad. Nejen že tato aplikace dovolí simulovat doteky či fyzické otočení jako u normálního zařízení, ale má i spoustu dalších užitečných prvků, například simulace geografické polohy, simulace nedostatku paměti a poskytuje vizuální rádce pro snazší odhalení UI nedostatků či chyb, atd.

Interface Builder 
Skvělá vestavěná aplikace pro tvorbu uživatelského rozhraní bez nutnosti psát jakýkoliv kód. To, že se nemusí psát kód je díky tomu, že se Cocoa a Cocoa Touch drží modelu MVC a lze proto jednoduše oddělit design interfejsu od implementace. Každá iOS aplikace obsahuje Storyboard, což je soubor, který zachycuje celkový obraz aplikace. Základní stavební jednotkou UI v iOS je View Controller, takže storyboard hlavně ukazuje jaké View Controllery zde jsou a jaké vazby mezi nimi zde existují. Dále se do View Controllerů rozmístí ostatní objekty UI, jako jsou tlačítka nebo textová pole, atd. Poté, co se rozmístí prvky UI, dá se využít systému zvaného Auto Layout, který využívá constraints k definici toho, jak se mají prvky chovat při různých změnách zobrazení například při rotaci displeje. Interface Builder obsahuje také Assistant editor, což je v jednoduchosti okno, ve kterém se zobrazuje kód právě editovaného UI prvku a dá se také za pomocí gesta click-and-drag přetahovat z interface editoru do tohoto okna kódu a navázat tak na implementaci UI prvku.Novinkou je Preview mód, který dokáže rychle zobrazit náhled vytvořeného uživatelského zobrazení bez nutnosti spouštění aplikace a tím velmi zrychlit celý proces tvorby UI.

Instruments 
Instruments jsou mocný nástroj pro testování a analýzu výkonu aplikací, který běží na frameworku DTrace vyvinutým společností Sun Microsystems. Za pomoci DTrace si uživatel může nadefinovat vlastní Instruments. Instruments umožňují sledovat běžící procesy, sbírat data a následně zkoumat takto shromážděná data.

Instruments poskytuje možnosti: 
 Zkoumat chování jednoho nebo více procesů
 Zaznamenat sekvenci uživatelských akcí a následně je přehrát, spolehlivě reprodukovat tyto události a shromažďovat data
 Profilovat aplikace na macOS a iOS
 Ukládat záznamy uživatelského rozhraní a nastavení jako šablony

S pomocí Instruments se dají provádět úkoly jako: 
 Vypátrat těžko reprodukovatelné problémy v kódu
 Provádět výkonnostní analýzu aplikace
 Hledat memory leaky a další problémy
 Vytvořit zátěžové testy na části aplikace

Source editor 
Pro editaci zdrojových souborů stačí požadovaný soubor vybrat v navigatoru, jeho obsah se okamžitě zobrazí v hlavní editovací oblasti. Source editor nabízí spoustu funkci při psaní kódu.Editor skenuje text při psaní, a když detekuje syntaktickou chybu, vyznačí řádek a zobrazí zprávu popisující problém. Často je také schopný nabídnout automatickou opravu chyby. Dále umožňuje používání snippetů kódu, ty je možné vybrat z knihovny snippetů. Uživatel si samozřejmě úplně jednoduše může definovat vlastní. Nedílnou součástí je doplňování kódu, jakmile uživatel začne psát jméno symbolu Xcode nabídne inline návrhy pro doplnění jména, stačí si vybrat. Když metoda nebo funkce obsahuje parametry nebo argumenty, při doplnění kódu vloží Editor placeholder za každý z nich. Editor nabízí možnost statické analýzy kódu, takže ještě než se spustí aplikace, statický analyzátor projde stovky možných cest v kódu a ohlásí potenciální chyby. Source editor nabízí ještě mnoho dalších funkcí, uvedeno bylo několik vybraných.

Continuous Integration 
Funkce Continuous Integration byla představena již v Xcode 5.0. Jejím hlavním úkolem je zajistit rychlé a jednoduché odchytávání problémů, vylepšení spolupráce týmu developerů, rozšíření pokrytí testy, generace buildů a statistik přes určitou časovou periodu a distribuce ostatním členům týmu. K tomuto procesu je zapotřebí Xcode Server, což je služba poskytovaná OS X Serverem. Na Macu se vytvoří boti, kteří pak běží na serveru a tam zajišťují integraci buildováním, analýzou, testováním a archivací vyvíjených aplikací. Boti napomáhají zajistit, že projekt je vždy ve stavu, kdy se dá vydat a když nastane problém Xcode server upozorní osobu zodpovědnou za způsobení chyby. Cílem této integrace je zlepšení kvality softwaru.

Odkazy

Reference

Externí odkazy 
 
 Oficiální stránky
Software pro iOS