LoginSignup
2
3

More than 5 years have passed since last update.

勉強会に行ったから、Scalaを触ってみる(1〜何で学ぶか、インストールからHello Worldまで〜)

Last updated at Posted at 2018-01-02

まえがき

先日、【再増席】教養としての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というフォルダ配下に作成しました。

Sample1.scala
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は含まれない。

あとがき

今日はここまでとして、後日続けて勉強していこうと思う。
ご覧いただき、ありがとうございました。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3