In questo tutorial si vedrà come creare un progetto Scala a partire da un template, che può essere usato come punto di partenza anche per progettti personali. Lo strumento utilizzato per tale scopo è sbt, che è lo standard di build per Scala. sbt permette di compilare, eseguire e testare i tuoi progetti, ma permette di svolgere anche altri compiti. Si presuppone una conoscenza dell’uso della linea di comando.
Installazione
- Assicurarsi di avere la Java 8 JDK (conosciuta anche come 1.8) installata
- Per verificarlo, eseguire
javac -version
da linea di comando e controllare che nell’output sia riportatojavac 1.8.___
- Se non si possiede la versione 1.8 o superiore, installarla seguendo queste indicazioni
- Per verificarlo, eseguire
- Installare sbt
Creare il progetto
- Eseguire il comando
cd
specificando una cartella vuota per spostarsi in essa. - Eseguire il comando
sbt new scala/hello-world.g8
. Questo effettuerà una pull del template ‘hello-world’ da GitHub. Si occuperà inoltre di creare la cartellatarget
, che per ora può essere ignorata. - Quando richiesto verrà richiesto il nome dell’applicazione, indicare
hello-world
. In questo modo verrà creato un progetto chiamato “hello-world”. - Osserviamo cosa è stato generato una volta eseguiti i passaggi sopra riportati:
- hello-world
- project (sbt usa questa cartella per installare e gestire plugins e dipendenze)
- build.properties
- src
- main
- scala (Tutto il codice scala che viene scritto dovrà andare qui)
- Main.scala (Entry point dell'applicazione) <-- per ora è tutto ciò che ci servirà
- build.sbt (il file di definizione della build interpretato da sbt)
Una volta che verrà buildato il progetto, sbt creerà diverse cartelle target
per i file generati. Possono essere ignorate per lo scopo di questo tutorial.
Eseguire il progetto
cd
nella cartellahello-world
.- Lanciare il comando
sbt
. Questo aprirà la console di sbt. - Eseguire
~run
. Il carattere~
è opzionale. Indica ad sbt di eseguirsi ad ogni salvataggio di un file, permettendo un ciclo di modifica, esecuzione e debug più veloce. sbt genererà anche una cartella chiamatatarget
che può essere ignorata.
Modificare il codice
- Aprire il file
src/main/scala/Main.scala
in un qualsiasi editor di testo. - Modificare “Hello, World!” in “Hello, New York!”
- Se non è stato interrotto il comando sbt, dovrebbe ora apparire “Hello, New York!” sulla console.
- Si può continuare a modificare il file, e le modifiche dovrebbero apparire a schermo se non vengono riportati errori.
Aggiungere una dipendenza
Vediamo ora come utilizzare librerie pubblicate da terzi per aggiungere ulteriori funzionalità alle nostre applicazioni.
- Aprire il file
build.sbt
con un qualsiasi editor di testo e aggiungere la seguente riga:
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.1.2"
libraryDependencies
è un set (un tipo di collection in scala), e utilizzando il simbolo +=
,
si sta aggiungendo la dipendenza scala-parser-combinators al set di dipendenze che sbt fetcherà quando verà inizializzato.
Una volta eseguito questo passaggio, sarà possibile importare classi, object ed altro da scala-parser-combinators tramite una semplice istruzione di import.
Ulteriori librerie pubblicate possono essere trovate sul sito
Scaladex, dove è possibile copiare le informazioni delle dipendenze cercate nel file build.sbt
.
Next steps
Si consiglia di continuare al tutorial successivo della serie getting started with sbt , ed imparare a testare il codice Scala con sbt tramite linea di comando.
oppure
- Continuare ad imparare Scala online e in maniera interattiva su Scala Exercises.
- Imparare le feature di Scala tramite articoli più concisi su Tour of Scala.