Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Scala.jsのすすめ
(だいたい)新卒エンジニア交流会#4
@ara_ta3
わたし
• 新卒2年目(14年卒)
• あどてく系のえんじにゃー
• Twitter : @ara_ta3
• このイベントの運営
• FF7リメイク(女装シーン)が楽しみ
• がっこうぐらし良いよね。
S…Scala.js?
Scala.jsとは?
• altJs(Alternative JavaScript)の一種
• 雑に言うと型を持ったJavaScript
• コンパイルするとJavaScriptになる
• 例)TypeScript, CoffeeScript …
Scalaとは?(雑に)
• JVM上で動く言語の一つ。
• 型がある。
• コンパイル速度の話はしない。
• リスト処理凄く強いよ。
Scala.js3分クッキング
• チュートリアルやってみよう
• http://www.scala-js.org/doc/tutorial.html
Scala.js3分クッキング
• ここにScalaのコードがあるじゃろ
• ( ^ ω ^ )
• Scala
Scala.js3分クッキング
• これを `sbt fastOptJS` して
• ( ^ ω ^ )
•
Scala.js3分クッキング
• こうじゃ
• ( ^ ω ^ )
• scala-js-tutorial-fastopt.js
ちゃんと動くよ
Scala.js使ってみよう
と思った?
え、本当に使えるの?
だって?
やりましょう with Vue.js
• Vue.jsのTODOアプリ例がすごく良く出来てる
のでこれを利用します。
• http://jp.vuejs.org/examples/todomvc.html
Vue.jsとは
http://jp.vuejs.org/ より
やりましょう with Vue.js
• Vue.jsのTODOアプリ例がすごく良く出来てる
のでこれを利用します。
• http://jp.vuejs.org/examples/todomvc.html
準備とか
• 昔記事書いたので参考に・・・
• http://arata.hatenadiary.com/entry/
2015/08/07/215021
やってみたよ
• レポジトリ
• https://github.com/ara-ta3/scalajs-vuejs-todo-app
• Scala.jsで書いたTodoアプリ(一部機能削除)
• http://aratanaka.pw/sca...
まずは差分を見てみよう
JavaScript vs Scala.js
• TodoアプリをJavaScriptで普通に書いた時
• https://github.com/yyx990803/vue/blob/
dev/examples/todomvc/js/app.j...
JavaScript vs Scala.js
• TodoアプリをScala.jsで普通に書いた時
• https://github.com/ara-ta3/scalajs-vuejs-todo-
app/blob/master/src/mai...
JavaScript vs Scala.js
• 126行 vs 4117行 32倍
• 2.4KB vs133 KB 55倍
JavaScript vs Scala.js
• 126行 vs 4117行 32倍
• 2.4KB vs133 KB 55倍
世の中良いことばかり
じゃない
https://ja.wikipedia.org/wiki/スターフォックス
エラーがわからん
debug入れれば良いんでしょ
出ない\(^o^)/
逃げの一手
StackTrace多い
感想
• Dynamicばかりで正直Scala生かしきれてない
• ※Dynamic : 動的なメソッド呼び出しができるScalaのtrait
• 自分の実装の問題?
• Scalaのコードがjsにコンパイルされたらどう動くかをとても
意識しな...
まとめ
• ScalaはいいよScala!あとScalaz!
• 型めっちゃ強くていいよね
• Scala.jsでライブラリ触るのすごく大変だよ!
• Scala.jsのすすめなのにすすめてない?知らない。
Dark vol4 for_slideshare
Upcoming SlideShare
Loading in …5
×

Dark vol4 for_slideshare

831 views

Published on

https://ngineerxiv.doorkeeper.jp/events/29760 用

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Dark vol4 for_slideshare

  1. 1. Scala.jsのすすめ (だいたい)新卒エンジニア交流会#4 @ara_ta3
  2. 2. わたし • 新卒2年目(14年卒) • あどてく系のえんじにゃー • Twitter : @ara_ta3 • このイベントの運営 • FF7リメイク(女装シーン)が楽しみ • がっこうぐらし良いよね。
  3. 3. S…Scala.js?
  4. 4. Scala.jsとは? • altJs(Alternative JavaScript)の一種 • 雑に言うと型を持ったJavaScript • コンパイルするとJavaScriptになる • 例)TypeScript, CoffeeScript …
  5. 5. Scalaとは?(雑に) • JVM上で動く言語の一つ。 • 型がある。 • コンパイル速度の話はしない。 • リスト処理凄く強いよ。
  6. 6. Scala.js3分クッキング • チュートリアルやってみよう • http://www.scala-js.org/doc/tutorial.html
  7. 7. Scala.js3分クッキング • ここにScalaのコードがあるじゃろ • ( ^ ω ^ ) • Scala
  8. 8. Scala.js3分クッキング • これを `sbt fastOptJS` して • ( ^ ω ^ ) •
  9. 9. Scala.js3分クッキング • こうじゃ • ( ^ ω ^ ) • scala-js-tutorial-fastopt.js
  10. 10. ちゃんと動くよ
  11. 11. Scala.js使ってみよう と思った?
  12. 12. え、本当に使えるの? だって?
  13. 13. やりましょう with Vue.js • Vue.jsのTODOアプリ例がすごく良く出来てる のでこれを利用します。 • http://jp.vuejs.org/examples/todomvc.html
  14. 14. Vue.jsとは http://jp.vuejs.org/ より
  15. 15. やりましょう with Vue.js • Vue.jsのTODOアプリ例がすごく良く出来てる のでこれを利用します。 • http://jp.vuejs.org/examples/todomvc.html
  16. 16. 準備とか • 昔記事書いたので参考に・・・ • http://arata.hatenadiary.com/entry/ 2015/08/07/215021
  17. 17. やってみたよ • レポジトリ • https://github.com/ara-ta3/scalajs-vuejs-todo-app • Scala.jsで書いたTodoアプリ(一部機能削除) • http://aratanaka.pw/scalajs-vue/ • jsファイル • http://aratanaka.pw/scalajs-vue/scala-js-vue-js- todo-app-fastopt.js
  18. 18. まずは差分を見てみよう
  19. 19. JavaScript vs Scala.js • TodoアプリをJavaScriptで普通に書いた時 • https://github.com/yyx990803/vue/blob/ dev/examples/todomvc/js/app.js • 126行 • 2.4 KB
  20. 20. JavaScript vs Scala.js • TodoアプリをScala.jsで普通に書いた時 • https://github.com/ara-ta3/scalajs-vuejs-todo- app/blob/master/src/main/scala/dark/todo/ App.scala • ↑をjsにコンパイルしたファイル • 4117行 • 133 KB
  21. 21. JavaScript vs Scala.js • 126行 vs 4117行 32倍 • 2.4KB vs133 KB 55倍
  22. 22. JavaScript vs Scala.js • 126行 vs 4117行 32倍 • 2.4KB vs133 KB 55倍
  23. 23. 世の中良いことばかり じゃない
  24. 24. https://ja.wikipedia.org/wiki/スターフォックス
  25. 25. エラーがわからん
  26. 26. debug入れれば良いんでしょ
  27. 27. 出ない\(^o^)/
  28. 28. 逃げの一手
  29. 29. StackTrace多い
  30. 30. 感想 • Dynamicばかりで正直Scala生かしきれてない • ※Dynamic : 動的なメソッド呼び出しができるScalaのtrait • 自分の実装の問題? • Scalaのコードがjsにコンパイルされたらどう動くかをとても 意識しないといけない • jsの世界と切り分けたいんだけど、Vue.jsがそもそもDomとの データバインディングを担うライブラリだからテーマが悪かっ た感すごい。
  31. 31. まとめ • ScalaはいいよScala!あとScalaz! • 型めっちゃ強くていいよね • Scala.jsでライブラリ触るのすごく大変だよ! • Scala.jsのすすめなのにすすめてない?知らない。

×