Applen Worldwide Developers Conference 2014 -kehittäjätapahtuman yksi tärkeimmistä julkistuksista tulevaisuuden kannalta oli ehdottomasti uuden Swift-ohjelmointikielen esitteleminen. Sen tarkoituksena on korvata nykyisin käytössä oleva Objective-C, jota käytetään OS X- ja iOS-sovelluksien kehittämiseen. Applen ajatuksena on luonnollisestikin ollut luoda selkeämpi ja tehokkaampi ohjelmointikieli, joka tekee sovelluksien kehittämisestä helpompaa yhtiön alustoille. Näin ohjelmoinnin perusteet ymmärtävänä henkilönä tässä on myös mielestäni onnistuttu, sillä Swift vaikuttaa muutaman päivän tutkiskelun perusteella selvästi Objective-C:tä helpommin lähestyttävältä. Henkilökohtaisesti olen aina kokenut Objective-C:n syntaksin hyvin monimutkaisena ja vaikeasti ymmärrettävänä.
Apple on julkaissut omassa iBooks-kirjakaupassaan hyvän oppaan, jossa käydään laajasti läpi yhtiön uutta ohjelmointikieltä. Kattava opus on täysin ilmainen ja sen avulla on helppo syventyä Swiftin maailmaan. Jos ohjelmoinnin perusteet ovat hanskassa, pääsee Applen e-kirjalla hyvin alkuun. Asiat on ilmaistu selkeästi ja kielen eri ominaisuudet käydään läpi esimerkein, jotka helpottavat asioiden hahmottamista.
Swift, Hello World! -tutoriaali:
Tekstin tulostaminen on hyvin yksinkertaista Swiftillä. Se tapahtuu println-kommennolla seuraavasti.
// Koodin joukkoon voidaan lisätä kommentteja kahdella perättäisellä kauttaviivalla. Nämä osat koodin suorittaja, eli kääntäjä jättää huomioimatta.
println("Hello, World!")
// Komentorivi tulostaa: Hello, World!
Kuten voidaan huomata, on Apple pyrkinyt jättämään ylimääräiset merkit Swiftin syntaksista pois. Tässä tapauksessa perinteisesti lausekkeiden loppuun lisättävä puolipiste (;) on hylätty kokonaan. Tämä tekee koodin kirjoittamisesta nopeampaa ja vähentää niin sanottujen helppojen virheiden määrää.
var hello = "Hello, World!"
println(hello)
// Komentorivi tulostaa: Hello, World!
Muuttujien esittely tapahtuu var-etuliitteellä. Yllä olen käyttänyt String-luokan (merkkijono) muuttujaa, johon olen tallentanut ”Hello, World!” -tekstin. Voimme käyttää muuttujaa apuna ja toistaa ensimmäisen esimerkin toisenlaista tapaa käyttäen.
var nimi = "Teemu"
var ika = 20
println("Hei \(nimi)! Olet \(ika) vuotta vanha.")
// Komentorivi tulostaa: Hei Teemu! Olet 20 vuotta vanha.
Silloin kun muuttujia lisätään println-komentoon tekstin sekaan, tulee ne erottaa muusta kokonaisuudesta seuraavasti: \(muuttuja). Yllä esimerkki tästä käytännöstä. Mukana on myös Int-luokan muuttuja (ikä), jonka arvon määrittely tapahtuu ilman heittomerkkejä.
Muuttujat ja vakiot:
Yllä olevissa esimerkeissä käytin String- ja Int-luokan muuttujia. Alla lista muuttujista:
- Int (kokonaisluku)
- String (merkkijono)
- Float, Double (liukuluku)
- Bool (totuusarvo true/false)
- Array, Dictionary (taulukko)
var nimi = "Teemu"
var luku1: Int = 10
var luku2: Int = 10
var summa: Int
summa = luku1 + luku2
println("\(luku1) + \(luku2) on yhteensä \(summa)")
// Komentorivi tulostaa: 10 + 10 on yhteensä 20
Kuten jo aikaisemmin kerroin, määritetään muuttujat var-etuliitteellä. Vakioiden (muuttuja, jonka arvo pysyy koko ohjelman ajan samana) määrittämisessä käytetään let-liitettä. Modernina kielenä Swift osaa määrittää jokaiselle muuttujalle ja vakiolle oikean luokan niille määrittelyn yhteydessä annetun arvon perusteella. Jos muuttujalle ei kuitenkaan anneta arvoa määrittelyn yhteydessä tai niiden luokka halutaan selventää, onnistuu se lisäämällä muuttujan nimen perään kaksoispiste (:) ja kirjoittamalla perään sen luokka. Yllä nähdään esimerkki tämänkaltaisesta tilanteesta.
Siinä hieman perusteita Applen uudesta Swift-kielestä. Miltä vaikuttaa? Henkilökohtaisesti olen kokenut uuden ohjelmointikielen mukavan selkeäksi ja helposti opittavaksi. Jos olet esimerkiksi joskus tutustunut C-kieleen, pääsee Swiftin sisälle helposti. Näin aloittelijan näkökulmasta Swift vaikuttaa huimalta parannukselta aikaisempaan.
Kiinnostaisiko lukea lisää Swift-tutoriaaleja? Kommentoi alle!
Hei!
Kiitos mielenkiintoisesta tekstistä! Kuinka helppoa olisi täysin ohjelmointikieliin vihkiytymättömänä aloitta Swift-kielen opettelu? Olisiko kyseinen kieli hyvä ensimmäinen askel, vai onko olemassa parempia vaihtoehtoja?
T:Niko
Sen perusteella mitä itse olen ehtinyt tutustu, vaikuttaa Swift hyvältä kieleltä aloittelijalle. Kielen syntaksi on yksinkertainen ja looginen, joten opettelu on helppoa ja nopeaa. Toki kyseessä on ainoastaan Applen alustalla toimiva kieli, joka on syytä huomioida.
Oletko tutustunut Xojo-ohjelmointikieleen, entinen Realbasic. Toimii Mac, Win ja Linux alustoilla. Olen käyttänyt sitä jotain 20 v matemaattisiin sovelluksiin ilmailua ja tähtitiedettä koskevissa aiheissa.
Anna vertailulausunto, jos voit.
Ikävä kyllä en ole tutustunut kyseiseen ohjelmointikieleen.
Kyllä demostraatiot kelpaa varsinkin kun ei ole vielä konetta jolla Applen omia sähköisiä kirjoja voi lukea. Ja ; merkistä luopuminen postitiivista kyllä periaateessa. Ja en tiedä viitsinkö opetella kun pitää opetella muiden alustojen jolle haluan koodata takia Ckieltä.
ps. Xojo on vieras mullekin kaiken maailman kieliä sitä onkin.