Upload
yuto-suzuki
View
754
Download
3
Embed Size (px)
Citation preview
おすすめしたいScala鈴木雄登
自己紹介
• 鈴木雄登
• @moc_yuto
• Python歴3年くらい
• Scala歴1年くらい
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
みなさん何の言語を使っていますか?
プログラミングパラダイム
• 手続き型言語 → C
• オブジェクト指向 → Smalltalk, Java
• 関数型言語 → CommonLisp, Haskell
中間の言語
• 手続きとオブジェクト指向→C++
• オブジェクト指向+関数型→Scala
中間の言語
• 手続きとオブジェクト指向→C++
• オブジェクト指向+関数型→Scala
Scalaって
• JVMで動く
• 静的型付け
• 型推論
• 関数型概念
Scalaのいいところ
• 実行速度は速い(JVM)
• 型安全なのでドラスティックにリファクタ可能
• 並行処理を楽に書ける
• LLっぽく書ける
Scalaのつらいところ
• コンパイルが遅い
• 学習難易度が高い
マジで重いので高スペックマシンで殴りましょ
う
レベルを上げて物理で殴れ!
Scalaってどんな感じか雰囲気を知ってみましょう
型推論
関数型概念
並行処理
Javaとの融合
フレームワーク
• PlayFramework:業界スタンダード
• Spray(akka http):API用の薄いフレームワーク
• skinny framework:Rails風の瀬良さんのフレームワーク
• finagle:Twitter社が作ったフレームワーク
DBアクセスライブラリ
• Slick:関数型なORM
• quill:Slickの同期型クエリビルダ
• Anorm:ほぼJDBC
• SkinnyORM:ActiveRecordライクなORM
勉強素材
• Hishidama(http://www.ne.jp/asahi/hishidama/home/tech/scala/)
• ドワンゴ(https://github.com/dwango/scala_text)
• はてな(https://github.com/hatena/Hatena-
Textbook/blob/master/foundation-of-programming-scala.md)
まとめ
みなさんもScala
やりましょう!!