Scala プログラムと本当の Scala 開発 (sbt)9/29までに演習に必要な情報をフォームに登録して下さい。みなさんから収集した情報を元に、GitHub にユーザ登録します。ユーザ登録しないと演習に参加することができません。
scala インタプリタから scalac へ)本当の Scala プロジェクト
Scala のプログラムの構造, object 宣言, main, App, package
object / class / trait さまざまな定義
val x = expr: 定数宣言
var x = expr: 変数宣言とその初期値の設定
type x = texpr: 型宣言
def f(arguments ...): T => { ... }: 関数やメソッドの定義
特殊な関数 main
sbt)What is sbt (Scala Build Tool)?
Why do we use sbt?
How do we use sbt? - sbt commands
lx01/compile: lx01プロジェクトのビルド
lx01/run: lx01プロジェクトの実行
project lx01: これから作業するプロジェクトを指定
run: (現在の)プロジェクトの実行runMain Hello1: (現在の)プロジェクトに定義されているHello1オブジェクト(に定義されたmain関数)を実行。~runMain Hello1: Hello1オブジェクトを継続的に実行。Hello1に影響を及ぼすソースコードが保存されるごとに、自動的に実行し直す。console: Scala インタプリタを sbt のなかから呼び出す。(デバッグに便利)
典型的な開発作業
sbt: なにはともあれ sbt を起動する。build.sbt ファイルのある場所で実行しなくてはいけない。
project lx01: これから作業するプロジェクトを指名する。~runMain ...: 狙ったmain関数を指定して、これを継続的実行。ターミナルとは別に好みのテキストエディタでScalaファイルの編集
保存するたびに前述の ~runMain コマンドにより狙ったmain関数が再実行される。
この日の作業が終ったら、テキステディタを閉じ、sbt の画面で [Enter] をして終了。
本日、学んだ 本当のScala のプログラム の形式が定着していることを確認します。
問題の様式は「***をするScalaのプログラムを書きなさい」のような形式とします。
穴埋め問題ではありません。
ややこしいアルゴリズムの記述は要求しません。
今日の授業資料とGitHubリポジトリの lx/lx01 を参考によく勉強しておくこと。
最小 Scala プログラム
hello1.scala - main 関数を使った方法hello2.scala - extends App を使った方法複数の文の実行 (sbt で ~runMain コマンドを使った継続実行しながら、文を追加した反応を観察するとよい)
hello3.scala定数の定義と参照
hello4.scala関数の定義と呼び出し
hello5.scala変数の定義と更新
hello6.scala