Scala関西ビギナーズ 第1回 に参加しました!


前から気になっていたプログラミング言語 scala を勉強してみようということで参加してきました。
初心者向けということで、言語の特色や関数型言語の説明の後にはProject Euler (プロジェクトオイラー)という数学の問題サイトをもとにScalaに触れ合って行く感じの勉強会でした。やっぱり、勉強会で実際に実装するのは楽しかった!!!!

Scala関西ビギナーズ 第1回
開催日:2012年12月22日(土)


セッション中のメモ

  • イミュータブル(状態を変えないこと)を重要視している・・・変数(var)よりも定数(val)を

  • メソッドの引数の書き方が特殊。
    以下の2つのメソッドは同じ意味のメソッド。
    引数の2つあることを表す.カッコで引数を区切ることが出来る。

def hogeList(num: Int)(limit: Int): List[Int] = {
    println(num + limit)
    return List(num, limit)
}

def HogeList(num: Int, limit: Int): List[Int] = {
    println(num + limit)
    return List(num, limit)
}

お役立ちサイト
Courser(英語)
Scala Cookbook
hishidamaさんのブログ


ScalaのVim環境

実際にScalaを書いてみようということで、始める前の作業として、、
コンパイル言語でも僕の場合、IDEを使う程でもない時はVimを使うようにしています。まずはVimの環境ということで、シンタックスカラーと補完の設定を入れてみました。

  • Vim Scala統合環境の構築
    vim , scalaの統合環境として、vim-scala というプラグインを入れました。
vimrcに以下の内容を定義
% vim ~/.vimrc
Bundle 'derekwyatt/vim-scala'


インストールを実行
% vim 
:BundleInstall


Project Eulerの第一問を解いてみました

Project Eulerの日本語化されたサイトもあります!
Project Euler 日本語

  • 第一問
    2通りのやり方をかいてみました。
    Scalaでforループを使う方法、Rangeオブジェクトを操作する方法。
    この場合も2つ目のやり方が完結で、直感的で分かりやすいですねー

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です