Swift Intro
Norint pradėti programuoti ir eksperimentuoti su programavimo kalba Swift pirmiausia reiktų susikurti tam skirtą projektą.
Eiga:
- Pasileidžiame Xcode
- File > New > Project > (iOS, watchOS, tvOS, or OS X) > Application > Pasirenkame norimą.
- Language meniu pasirenkame Swift.
Reikalavimai
Norint kurti Switft 2.2 kalba, reikalinga Xcode 7.3 versija, taip pat SDK reikalavimai. Minimalūs reikalavimai operacijų sistemoms yra iOS 7 ir OS X 10.9, nustatant senesnes versijas, galima projekto kompiliavimo klaida.
PASTABA!
Paleidžiamieji failai sukurti (sukompiliuoti iš komandinės eilutės), tikisi surasti Swift bibliotekas savo @rpath. Jei planuojate išleisti savo Swift paleidžiamąjį failą sukurtą iš komandinės eilutės, taip pat turite išleisti ir visas kartu susijusias bibliotekas. Swift sukurtas naudojantis Xcode jau turi visas reikiamas runtime bibliotekas įkompiliuotas statiškai.
Gilintantis į Swift importavimo procesą
Kai jau sukūrėme ir paruošėme Xcode projektą, galime importuoti bet kokį frameworką iš Cocoa arba Cocoa Touch ir pradėti naudotis su Object-C iš Swift.
Bet koks Objective-C frameworkas ar C biblioteka kurie palaiko mudulius gali būti importuoti tiesiogiai į Swift. Tai apima visus Objective-C sisteminius frameworkus tokius kaip Foundation, UIKit ir SpriteKit taip pat daugelį C bibliotekų kurios pateikiamos su sistema. Pavyzdžiui, norint naudotias Foundation API iš Swift failo, pridedame šią eilutę į failo viršų:
import Foundation
Su šiuo importo deklaravimu, šis mūsų Swift failas dabar galės kreiptis į visas Foundation, klases, protokolus, metodus, nustatymus ir konkstantas.
Importo procesas yra gryžtamasis. Objective-C frameworkai deklaruojasi API headerių failuose. Swift programavimo kalboje, šie headerių failai yra įkompiliuoti į Objective-C modulius, kurie vėliau importuojami į Swift kaip Swift API. Importavimo procesas nustato kaip funkcijos, klasės, metodai ir tipai yra deklaruojami Objective-C kode, kad atsirastų Swift'e. Funkcijoms, metodams, procesas daro įtaką tipams ir jų argumentams bei grąžinimo kodams. Tipams, importavimo procesas gali padaryti štai šių efektų:
- Remapinimas kai kurių Objective-C tipų jų akvivalentams Swift kalboje, tokių kaip id į AnyObject
- Remapinimas kai kurių Objective-C pagr. tipų į jų alternatyvas Swift kalboje, tokių kaip NSString į String
- Remapinimas kai kurių Objective-C konceptų kurie atitinka swift'o koceptus, kaip pointeriai ar pasirinkimai
Daugiau informacijos kaip naudotis Objective-C Swift kode, žiūrėkite For more information on using Objective-C in Swift, see Bendravimas su Objective-C API].
PASTABA!
Męs negalime importuoti C++ kodo tiesiogiai į Swift. Vietoj to galime sukurti Objective-C arba C wrapperį C++ kodui.
Modelis kuris naudojamas importuoti Swift į Objective-C yra panašus į ta kuris naudojamas importavimui Objective-C į Swift. Kartu su Swift moduliais generuojama ir Objective-C headeriai. Šie headeriai pasidaro kaip API kurie vėliau gali būti atgal sumapinti į Objective-C. Kai kurie Swift API negali būti sumapinti atgal į Objective-C todėl, kad neatitinta pažangių kalbos ypatybių kurias turi Swift. Daugiau informacijos apie Swift naudojimą Objective-C kalboje žiūrėkite - Objective-C tame pačiame projekte.