Blog Stručný úvod do nového programovacieho jazyka Swift

Stručný úvod do nového programovacieho jazyka Swift

Apple nám na tohtoročnej WWDC predstavil svoj nový programovací jazyk Swift. Ten by mal byť podľa jeho tvorcov rýchlejší, bezpečnejší, modernejší a veľa ďalšieho. Príchod Swiftu neznamená žiadne problémy s vašimi Objective-C aplikáciami, pretože v jednej iOS aplikácii môže existovať kód Objective-C aj Swift. Jazyk je pomerne ľahké sa naučiť a prichádza s možnosťami, ktoré robia programovanie v ňom produktívnym.

Syntax jazyka

V prípade, že ste už programovali v jazykoch ako Ruby alebo Python, Swift vám môže pripadať svojou syntaxou veľmi prívetivý. Pre úplných začiatočníkov bude Swift vhodnejším jazykom v porovnaní s Objective-C, nebude potrebné napríklad rozdeľovať zápis tried do dvoch samostatných súborov, importovať súbory s deklaráciami alebo si lámať hlavu so správou pamäte. Swift je kompatibilný s existujúcimi Objective-C knižnicami. Nie je problém s písaním nových modulov vo Swifte, ktoré sú kompatibilné s existujúcim Objective-C kódom.

Príklad Objective-C kódu:

if (myDelegate != nil) {

    if ([myDelegate respondsToSelector: @selector(scrollViewDidScroll:)]) {

        [myDelegate scrollViewDidScroll:myScrollView];

    }

}

Ten istý zápis vo Swifte:

myDelegate?.scrollViewDidScroll?(myScrollView)

Playground

XCode vo verzii 6 disponuje novým nástrojom s názvom Playground, ktorého účel vyplýva už z jeho samotného názvu. Slúži na experimentovanie s kódom a poskytuje možnosť okamžite vidieť zmeny. Inými slovami už viac nepotrebujete kompilovať a spúšťať vašu aplikáciu v Simulátore. Playground je ideálnym nástrojom na zoznámenie sa s jazykom a spoznať ho do detailov. Navyše zobrazuje programátorovi aj prípadné chyby a upozornenia, aby bol kód kvalitnejší.

Programátori v jazyku Ruby niečo podobné už poznajú pod názvom irb, Playground navyše prináša aj grafický výstup.

Rýchlosť Swift-u

Aj napriek tomu, že Swift je high level programovací jazyk, je veľmi rýchly, rýchlejší ako Objective-C.

Apple na jazyku Swift stále pracuje a teda výsledky porovnania výkonu Objective-C vs. Swift bez optimalizácie kódu hovoria jasne v prospech Objective-C. Avšak pri použití Applom odporúčanej optimalizácie je výsledok opačný a Swift bol v testovaných algoritmoch až 35x rýchlejší.

Zdroj: Jesse Squires, Apples to apples, Part II

Jazyk, ktorý máme dnes k dispozícii, nie je stále finálny produkt. 9. septembra 2014 Apple vydal verziu 1.0 jazyka – gold master. Apple na ňom stále pracuje a vyvíja ho a je pravdepodobné, že pribudnú jeho ďalšie možnosti a features.

Pokiaľ sa chcete zoznámiť s týmto jazykom už teraz, budete potrebovať Xcode 6 beta a iOS 8 SDK (tiež v bete). Xcode 6 je možné bez obáv nainštalovať aj vedľa vašej stabilnej Xcode 5, nehrozia žiadne konflikty ani nič podobné. Inštalačné DMG si stiahnete z Developer portálu a nainštalujete. App store nebude akceptovať aplikácie naprogramované vo Swifte až pokým nevydá nový OS Yosemite a iOS 8, čo pravdepodobne bude už veľmi skoro.

Ako sa naučiť Swift?

Apple vydal o Swifte perfektnú knihu a ak sa chcete Swift naučiť, určite si ju prečítajte. Je dostupná zadarmo a je v anglickom jazyku. Pokiaľ by ste sa chceli dozvedieť viac z tvorby iOS aplikácií a naučiť sa programovať iOS aplikácie pre iPhone a iPad, môžete sa zúčastniť kurzu iOS Developer, na ktorom v priebehu 3-mesiacov vytvoríte svoju mobilnú aplikáciu v jazyku Swift a prostredí Xcode pod vedením lektora s niekoľkoročnými vývojárskymi skúsenosťami.

Podľa nás je Swift budúcnosťou programovania pre iOS zariadenia. Apple ho bude aj naďalej vylepšovať a pridávať jazyku nové možnosti. Ako je možné vidieť z krátkej ukážky syntaxe v úvode tohto blog postu, je viac developer-friendly a je jednoduchšia na učenie sa pre začiatočníkov. Čo si myslíte o Swifte? Nechajte komentár a podeľte sa o svoje skúsenosti.


Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.



Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Junior / Senior Java Backend Software Engineer

JOB Position: Java Backend Software Engineer Contract type: TPP, Contract Location: Bratislava Salary Junior: 1500 EUR/Brutto Salary Senior: 2200 EUR/Brutto Rate: 3000 -4000 EUR/monthlyPrimary Job...

Senior Sieťový Špecialista

PRÁCA Pozícia: Sieťový špecialista Pracovný pomer:  TPP Miesto práce: Bratislava, on-site Plat: od 1700+ EUR/Brutto/mesačneHlavné zodpovednosti:Navrhuje architektúru, štruktúru a IP adresácie multiplatformových LAN/MAN/WAN sietí ...

Data Mining Expert

PRÁCA Pozícia: Data Mining Expert Pracovný pomer:  TPP Miesto práce: Bratislava, on-site Plat: od 2000+ EUR/Brutto/mesačneAké výzvy ťa čakajú?Vynikajúca pracovná príležitosť pre nadšenca práca...

Artificial Intelligence Consultant

JOB Position: Artificial Intelligence Consultant Contract type: Full-Time Location: Bratislava Salary: 2000 EUR/Brutto/monthsResponsibilities:conceptual processing and development of the new solutions in the area e.g....

Artificial Intelligence Expert

JOB Position: Artificial Intelligence Expert Contract type: Full-Time Location: Bratislava Salary: 2000 EUR/Brutto/monthsSuccessful adaptation of technologies like machine learning, deep learning, artificial inteligence will determine companies...

Senior Front-end / Angular Developer / Tvorba serverovej a aplikačnej logiky

PRÁCA Pozícia: FE/ Angular developer Pracovný pomer:  TPP, živnosť Miesto práce: Bratislava, Prievidza, Žilina Plat: od 1700+ EUR/Brutto/mesačneNáplň práce:Spolupráca na vývoji SW...

Senior .NET/Angular developer

PRÁCA Pozícia: .NET/Angular developer Pracovný pomer:  TPP Miesto práce: Bratislava, on-site Plat: od 1700+ EUR/Brutto/mesačneČo bude Vašou náplňou práce:spolupodieľanie sa na vývoji SW riešenia...

Čo sme stihli v roku 2019

Každý rok je niečím špeciálny a rok 2019 nie je výnimkou. V...

Srdečne ťa pozývame na stretnutie DDD Community – Analýza domény

Na začiatku nového roka sa zameriame na analytické uchopenie domény pomocou DDD....

TOP 10 skillov programátora

Chceš vedieť na akých 10 skillov by si sa ako programátor mal/a zamerať? Sú to skilly, ktoré ti pomôžu si nájsť prácu, či byť označovaný/á ako "guru".

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.