Esko Suomi veti CraftCon-tapahtumassa Clojure-koulutuksen |Siili Solutions

3 tehokkainta Clojure-työkalua

Aloittaessani ohjelmoinnin Clojurella noin vuosi sitten, alkuinnostukseni oli lannistua saman tien. Sopivan editorin tai IDEn metsästäminen osoittautui haastavaksi. Päätin vinkata omasta mielestäni tehokkaimmista työkaluista sinullekin, jotta välttäisit pitkän seikkailun työkaluviidakossa.

Matkallani Clojure-nöösistä Clojure-osaajaksi päätin edetä askel askeleelta ja aloittaa ensin yksinkertaisimmista työkaluista. Kokemus on osoittanut, että vaikka kuinka tekisi mieli hypätä heti altaan syvään päähän, oppiminen on innostavinta, kun aloittaa työkalusta, joka sopii parhaiten omalle osaamistasolle.

Usain Boltkin ryömi todennäköisesti takaperin ennen kilpajuoksijan uraansa.

Nightcode - aloittelijan paras ystävä

Jos et vielä tunne Clojurea kielenä tai ekosysteeminä, aloita tutustuminen Nightcodesta. Se on kevyt, nimenomaan aloittelijalle suunniteltu IDE, johon on sisäänrakennettu ekosysteemin kannalta kaikki olennaiset osat:

  • koodille on syntaksin väritys sekä automaattinen sisennys
  • sisäänrakennettu REPL (ReadEval-Print-Loop)
  • Kaksi yleisintä Clojureekosysteemin build-työkalua on suoraan tuettu:

Ja mikä tärkeintä, Nightcode ei oleta, että aloittelija ymmärtäisi yhtään mitä yllä mainitut ovat. Kokeile Nightcodella pieniä perusjuttuja, aja niitä eri tavoin ja kokeile, miten itse kieli toimii.

Nightcode ja sen kautta käynnistetty ClojureBridge-tervehdys.

Kuva: Nightcode ja sen kautta käynnistetty ClojureBridge-tervehdys. ClojureBridge järjestettiin viimeksi Siilillä.

Nightcodea voi käyttää isompiinkin projekteihin, mutta on oletettavaa, että kun perusteet ovat hanskassa ja sinulla on ymmärrys siitä, mikä on REPL ja kuinka vaikkapa Leiningen toimii projektin rakenteen hallintaan, osaamisesi on todennäköisesti jo sillä tasolla, että editorinkin voi vaihtaa pykälää vakavampaan.

Tutustu Nightcodeen tästä.

VS Code - perusteet hallitsevalle

Kun taidot karttuvat, alat tarvita työkalua, jossa on tuki muullekin kuin vain Clojurelle. Monipuolisempien työkalujen kohdalla vastassa onkin runsaudenpula, ja hieman yllättäen ainakin itselleni parhaiten tuntuu sopivan Microsoftin VS Code.
 

VS Code-näkymä, Clojure |Siili Solutions

Kuva: VS Code-näkymä Siilin humanize-kirjastosta
 

VS Coden pohja on sama kuin GitHubin Atom-editorillakin, mutta lähes ihmeellisesti VS Code tuntuu toimivan paljon jouhevammin. VS Codella pystyy tekemään monenlaista muutakin koodia kuin vain Clojurea. Esimerkiksi osa sen integraatio-plugineista keskittyy tietokantakyselyiden ajamiseen. Näistä laajemmista kehittäjän ominaisuuksista on erityisesti hyötyä silloin, kun tekee tuotantoprojekteja, joissa on Clojuren lisäksi muun muassa JavaScriptiä, CSS:ää, mahdollisesti Dockerfile, Git-versionhallinta ja niin edelleen.

Aivan paketista asennettuna VS Code ei ole Clojure-kykyinen. Erinomaiset ohjeet VS Coden Clojure-ystävälliseksi saattamiseen on kirjoittanut Alex Zurek.

VS Codessa on oma plugin-ekosysteemi, joten sillä pärjää todella pitkälle. Itse käytin VS Codea työkoodiin noin 8 kuukautta ennen kuin vaihdoin seuraavan tason työkaluun. Tarve tähän tuli, kun huomasin käyttäväni lukuisia työkaluja eri osa-alueiden toteuttamiseen, enkä voinut käyttää näitä saumattomasti VS Coden sisällä. Tutustu VS Codeen tästä.

Cursive IDE – laatua, josta kannattaa maksaa

Mikäli huomaat käyttäväsi useampaa eri kehitystyökalua VS Coden lisäksi, on aika suunnata katse JetBrainsin IntelliJ-alustalle tehtyyn Cursive IDEen.

Kuva: Okei, liika on liikaa, mutta periaatteessa kehitystyökaluja Cursiven sisältä löytyy joka lähtöön!
Kuva: Okei, liika on liikaa, mutta periaatteessa kehitystyökaluja Cursiven sisältä löytyy joka lähtöön!

Teknisesti ottaen Cursive IDE on IntelliJ:n laajennus. Tämä tarkoittaa, että sen kautta saat käyttöösi JetBrainsin sekä heidän partneriverkostonsa kaikki IntelliJ-alustalle toteuttamat huippulaadukkaat laajennukset. Merkittävintä näissä laajennuksissa onkin niiden yhteistoiminta saman työkalun sisällä, jolloin työskentely nopeutuu jo ihan senkin takia, että kaikki tarvittava on johdonmukaisesti käytettävissä samassa työskentely-ympäristössä.

Cursive on maksullinen, mutta hinta on varsin hyvin perusteltu sen tuomalla lisäteholla työntekoon. Varsinkin jos IntelliJ on ennestään tuttu, niin Cursiven avulla pääsee täydentämään ja laajentamaan osaamistaan koodaamisen ilon ohella.

Tutustu Cursive IDEen tästä.

Oikeilla työkaluilla on suuri merkitys niin työssä kehittymisen kuin itse työn teonkin kannalta. Ohjelmointityökaluja kannattaa kokeilla useampaa ja vaihtaa niitä sitä mukaa, kun taidot karttuvat. Aivan kuten puuhommissakin; ennen sirkkelin käyttöä on osattava ensin käyttää käsisahaa.

Matkan maaliin voi tehdä monella tavalla. Toivottavasti sait tästä artikkelista intoa aloittaa Clojuren kanssa ja malttia edetä askel kerrallaan.

 

Meillä uskotaan funktionaalisen ohjelmoinnin tulevaisuuteen ja Clojure-osaajien aktiivinen yhteisö kasvaa jatkuvasti. 
Lue lisää ja liity meidän Clojure-devaajien porukkaan Helsingissä!

 

---

Lue seuraavaksi: 

Ohjelmoija, näin murtaudut ulos mukavuusalueeltasi

Mitä koneoppiminen vaatii ohjelmistokehitykseltä?

Uusi ura ohjelmistoalalla – oppimisen kulttuuri inspiroi Oliveria