Ruby: kehittäjän onnellisuutta varten rakennettu kieli
Ruby on dynaaminen oliopohjainen kieli, joka tunnetaan ilmaisuvoimaisesta syntaksistaan ja vähimmän yllätyksen periaatteesta. Sitä käytetään tuotantojärjestelmissä ympäri maailmaa – erityisesti Ruby on Railsin kautta – ja se on edelleen ensiluokkainen vaihtoehto verkko-API:hin, skriptaukseen ja työkalujen rakentamiseen. Tässä kokonaisuudessa käsitellään kieltä sen perustietotyypeistä metaprogrammointiin, rinnakkaisuuteen ja suorituskykyyn asti, joten saat vankan perustan riippumatta siitä, tähtäätkö Railsiin, Sinatraan vai itsenäisiin Ruby-sovelluksiin.
Mitä opit
Aloitat Rubyn perusrakennuspalikoista – merkkijonoista, symboleista, hajautustauluista, luvuista ja ohjausrakenteista – ja siirryt sitten metodeihin, lohkoihin, väleihin sekä koko Enumerable-moduuliin. Keskitason aiheita ovat oliosuunnittelu, moduulit ja mixinit, säännölliset lausekkeet, hahmonsovitus, poikkeustenkäsittely sekä gemien käyttö Bundlerin avulla. Opit myös tiedostojen syötteen ja tulosteen sekä JSON-, CSV- ja YAML-muodot, minkä jälkeen siirryt proc-rakenteisiin, lambdoihin, sulkeumiin ja mukautettaviin enumerointeihin. Käytännön osioissa tutustut testaukseen TDD:n avulla, oman Ruby-gemin rakentamiseen sekä verkkokehitykseen Sinatralla ja Railsilla (mallit, Active Record, ohjaimet ja reititys). Kokonaisuuden lopuksi käsitellään metaprogrammointia, rinnakkaisuutta ja suorituskyvyn profilointia.
Oppimispolku
29 kurssia etenee tasolta A1 tasolle C1. A1- ja A2-kurssit luovat perustan syntaksille ja ydintyypeille. Niihin kuuluvat Ruby-merkkijonot ja tekstinkäsittely, Rubyn ehtolauseet ja case-rakenne sekä Metodit ja lohkot. B1-kursseilla kielitaito syvenee aiheilla Olio-ohjelmointi Rubylla, Rubyn hahmonsovitus ja Gemien ja Bundlerin käyttö. Tämän jälkeen B2-kurssit yhdistävät kielen käytännön tuotoksiin: aiheina ovat Testaus ja testivetoinen kehitys (TDD), Ruby on Railsin perusteet, Oman Ruby-gemin rakentaminen ja Ruby-verkko-API:t Sinatralla. C1-taso päättyy kursseihin Metaprogrammointi Rubylla, Rinnakkaisuus Rubyssa ja Rubyn suorituskyky ja profilointi.
Näin se toimii
Jokainen kurssi on jaettu lyhyisiin käytännönläheisiin oppitunteihin, jotka suoritat sisäänrakennetussa koodieditorissa reaaliaikaisen palautteen avulla. Käytettävissäsi on tekoälyopettaja aina, kun jäät jumiin: se selittää virheet ja ehdottaa seuraavia vaiheita paljastamatta ratkaisua. Voit edetä omaan tahtiisi ja palata mille tahansa oppitunnille kertaamaan tai kokeilemaan lisää.