Scalaはじめました!
      by Abe Asami
自己紹介

Abe Asami きの子 (フリーエンジニア)
http://nocono.net/
Twitter: @aa7th
使用言語:Java、C#など
Scalaをはじめた理由
PlayFramework2.0を使いたい!


   Java and Scala
    Framework!
コード短くなったりして何か凄いらしい
というわけで・・・

Scalaはじめました!
2日前に!
というわけで・・・

Scalaはじめました!
Scalaといえば
オブジェクト指向であり、そして

     関数型!
なにそれこわい
こわいけど
チャレンジしてみよう
まずは基礎構文から
@IT




http://www.atmarkit.co.jp/fjava/index/index_scala.html
曰く・・・
変数(var)はなるべく使わないこと!
定数(val)を使うように!
???
どういうこと?意味わかんない?
関数型こわい
でも...
\こっちで判断するんで型宣言しなくていーっすよ/



       型推論!
\いい感じにコンパイルしときますんでー/



プリミティブ型がない!
\なくても分かりますんで、書かなくていいっすよー/


  セミコロンが
(あまり)いらない!!
あれ?
なんだかScalaって・・・
\めんどくさいとこやっときますんでー。/



結構いいやつじゃない?
技術書も買いました
「Scalaスケーラブルプログラミング」

     (通称:コップ本)
よく出てくるキーワード


     「副作用」
副作用って?
「ある機能がコンピュータの(論理的な)状態
を変化させ、それ以降で得られる結果に影響
     を与えることをいう」

       (Wikipediaより)
副作用が無いのが
   関数型
関数は「いつどこで実行しても
   同じ値を与えれば
  同じ値が戻ってくる」
  べき!(=参照透過性)
副作用がないと・・・
テストが簡単!
バグがでにくい!
関数の再利用が簡単で安全!
いいことづくし!
ところが
変数(var)を使うと副作用が発生する!


       メモリを書き換えちゃう・・・
なるほど!
だから変数(var)ではなく定数(val)
 を使わないといけないのかー!
Scalaをはじめた感想
ScalaはJavaを
「複雑」にするものではない
むしろ・・・

「シンプル」にするもの!
Scala、思っていたより
  怖くなさそうです
それでも怖い!
そこのあなた!
「Scalaビギナーズ」
  開催予定(日時未定)
会場:オオサカンスペース
   http://www.osakan-space.com/
会場裏には




こんなレストランバーがあります!
こんな感じで
    他の人を巻き込みながら
Scalaの勉強引き続き頑張ります!
ありがとうございました!

Scalaはじめました!