/scalakb4_workshop

関西Scalaビギナーズ#4 でのワークショップのサンプルコードです。

Primary LanguageShellOtherNOASSERTION

関西Scalaビギナーズ#4 Workshop with Kuchitama

このリポジトリは、第4回 関西Scalaビギナーズで行った、初心者向けワークショップの補填資料です。

目的

  • sbtプロジェクトを作成してScalaプログラムを体験してみる
  • sbtの最低限の使い方を覚える

お題

Scala関西ビギナーズ参加者のリストからランダムに1人を選んで出力する抽選プログラムを作成する

Step0

とりあえずプロジェクトを作りましょう

  • activatorで新規プロジェクトを作成する

解説

Step1

とりあえず、出力してみる

  • 変数に名前のリストを持ち、ランダムに1件出力する コミット

サンプルコード

Step2

ライブラリを使ってみる

  • Scala IO をsbtのlibraryDependencies に追加する コミット
  • Scala IO を使ってファイルから名前を読み込む コミット

サンプルコード


これ以降は、この課題の目的からはアドバンスドなステップになります。

Step3

CLIっぽくしてみる

  • 実行時オプションでファイルを指定するように変更
  • ファイルが指定されなければ、コマンドラインから名前を入力

サンプルコード

Step4

実行可能なjarにまとめる

  • sbt-assemblyプラグインを追加する コミット
  • sbt assemblyする

作成したjar

実行方法

標準入力から

java -jar scalakb4_workshop-assembly-1.0.jar

ファイルから

java -jar scalakb4_workshop-assembly-1.0.jar -f names.txt