#まえがき
先日、【再増席】教養としてのScala ~ そろそろ始めてみたい2017冬 connpass という勉強会に行ってきました。
せっかくなので、少し触ってみたので、備忘録的に書いてみます。
#何で学ぶか
##勉強会で紹介されたリスト
###ドワンゴオリジナルの新卒エンジニア向けの研修資料
ドワンゴオリジナルの新卒エンジニア向けの研修資料
ドワンゴさんの社内用に作られた資料のようですが、すごく良くできている。
勉強会では、とりあえず以下2点をみれば、Scalaを分かった気になれる?的な話がありましたw
- コレクションライブラリ
- ケースクラスとパターンマッチング
###Scala 99
Scalaの問題が99問!これをやりきれれば、あなたも立派なスカラリスト?w
Scala 99(英語)
###Scala Search
Scalaで出てくるよく分からない単語を調べるのにいいらしい。例えば、?
とか。
Scala Search(英語)
###やってみよう Scala!
Scalaを布教させよという時に良いと紹介されていました。
実によくまとめられていていると思われます。(まだ読んでない)
やってみよう Scala!
###ひしだま's 技術メモページ
ひしまださんは、Scalaの重鎮なのでしょうか?勉強会でも何度もお名前が出ていて、技術ページも紹介されていました。
Scala 99の挑戦時につまずいたら、チート的に使うといいようです。
ひしだま's 技術メモページ
###先駆者に聞く
勉強会で先駆者の人たちも入門者や初学者が、どんなところでつまづくのかを知りたいらしいです。
もし、近くに聞ける人がいれば聞く。いなければ、思い切ってTwitter等で質問してみる。
###Scalaスケーラブルプログラミング
勉強会では、Scalaスケーラブルプログラミング第3版
が紹介されていましたが、初学者がいきなりこれを読むと心が折れるそうです。
ドワンゴの研修資料読んで、Scala 99を何問か解いて、さらに深く知りたい時に手を出すといいようです。
##その他
###ググって見つけたサイト
役に立ちそうなサイトがいくつかあったので、紹介します。
Scala入門時に役立つ情報まとめ
Scala勉強に役立つ書籍まとめ
###Kindle本(Kindle unlimited)
無料で読めるし、参考程度に読み進めていこうと思うくらい。
ゼロから学ぶScala Kindle版
Guide to ScalaーScalaプログラミング入門 Kindle版
#実際に触ってみる
##インストールからHello World
###インストール
参考:2014年こそScalaを始めよう
#macだからこれだけw
$ brew install scala
#バージョン確認(2017/12/21 現在)
$ scala -version
Scala code runner version 2.12.4 -- Copyright 2002-2017, LAMP/EPFL and Lightbend, Inc.
###Hello World!
####Scalaに入る
$ scala
Welcome to Scala 2.12.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_131).
Type in expressions for evaluation. Or try :help.
####Hello World!
scala> println("Hello World")
Hello World
##コンパイル
参考:ゼロから学ぶScala Kindle版
以下を作成します。私はmyScala
というフォルダ配下に作成しました。
object Sample1{
def main(args:Array[String]){
println("First Scala!")
print("Second ")
print("Scala!")
}
}
terminalでScalac
を使い、コンパイルします。
$ cd myScala/
$ scalac Sample1.scala
#問題があればエラーが出ます。出なければ問題なし。
#コンパイルが終わると、object名のclassができています。
$ ls
Sample01.scala Sample1$.class Sample1.class
classをscalaで実行。
$ sudo scala Sample1
First Scala!
Second Scala!
println
は改行が文末に含まれるが、print
は含まれない。
#あとがき
今日はここまでとして、後日続けて勉強していこうと思う。
ご覧いただき、ありがとうございました。