Weitere ähnliche Inhalte
Ähnlich wie PHP開発者がScalaに入門して苦しんだ話 (20)
Kürzlich hochgeladen (12)
PHP開発者がScalaに入門して苦しんだ話
- 2. 自己紹介
名前: 西村一馬
所属: ナイル株式会社 開発室
現在はApplivAdの開発リーダー
去年中旬にApplivAdにチーム異動してプロジェクトを引き継いだ
ApplivAd以前はずっとPHPでの開発に従事
環境構築にRubyやPythonを使うことはあったが、Java経験は無し
- 4. ApplivAdの紹介
実装言語: Scala (Play Framework + slick + etc....)
社内のScalaプロダクトの中では一番大規模(だと思っている)
Appliv
(Webブラウザ版)
Appliv
(アプリ版)
広告リクエスト
トラッキングシグナル
広告JSON返却 広告JSON返却
広告リクエスト
トラッキングシグナル
- 17. はじめに
▷ いくつもの謎
"Action.async { ... }" のあたりの構文どうなっている?
"implicit rs" is 何?
rsが使われているように見えないんだけど…
"implicit rs => " が矢印で終わっているけどどうなってる
"map"って何ですか?
- 36. implicit parameter
▷ 暗黙の変数
▷ 関数呼び出し時の引数を省略できる
▷ 実はFutureのmapは以下のような実装になっている
( https://github.com/scala/scala/blob/2.12.x/src/library/scala/concurrent/Future.scala#L287 )
▷ "implicit executor: ExecutionContext"という引数が存在
▷ Futureのプログラムを動かすためには
"import scala.concurrent.ExecutionContext.Implicits.global"
によりmapにexecutorを渡せるようにする必要あり