SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
Scala.jsプロジェクト作成まで
すわっち(@tsuwatch)
2013.06.22 プログラミング生放送勉強会@大阪
13年6月23日日曜日
自己紹介
すわっち(@tsuwatch)
和歌山出身
大学院生
言語
PHP
Node.js
つくったサービス
ニコニコトレンド
13年6月23日日曜日
Scala
オブジェクト指向+関数型
スケーラブル
シンプルな記述
短いコード量
13年6月23日日曜日
Scala.js
http://lampwww.epfl.ch/~doeraene/scala-js/
13年6月23日日曜日
Scala.js
ScalaをJavaScriptにコンパイル
他に
GWT, Scala/GWT
CoffeScript, Dart, TypeScript, etc...
13年6月23日日曜日
サポート
クラス,トレイト,ケースクラス
型システム
コレクション
パターンマッチ
内包表記
13年6月23日日曜日
事前準備
brew install scala
brew install sbt
13年6月23日日曜日
Scala.jsの準備
$ git clone git://github.com/lampepfl/scala-js
$ cd scala-js
サブモジュール
$ git submodule init
$ git submodule update
sbtを使用する
sbt > package-js
scalajs-runtime.jsが生成される
sbt > publish-local
13年6月23日日曜日
補足
sbt > package-js
sbt > publish-local
上記実行時に,JVMがMaxPermSizeを超えて
エラーが出た
~/.sbtconfig
SBT_OPTS=-XX:MaxPermSize=256m
ここに書いておくとsbt起動時に設定を読み
こんでくれる
13年6月23日日曜日
サンプル実行
sbt > examples/package-js
examples/以下
13年6月23日日曜日
プロジェクト作成(1/2)
まずサンプルプロジェクトをclone
$ git clone git://github.com/sjrd/scala-js-example-app
js
scalajs-runtime.jsを入れる
project
ビルド関係
src
ソースコード
13年6月23日日曜日
プロジェクト作成(2/2)
jsディレクトリに,Scala.jsの準備時に生成し
たscalajs-runtime.jsをコピー
sbt > package-js
index.htmlを見て,It works!と出れば完了
13年6月23日日曜日
サンプルコード
13年6月23日日曜日
htmlファイル
13年6月23日日曜日
まとめ
Scala.js
ScalaをJavaScriptにコンパイル
Scala.jsのプロジェクト作成
Let’s Scala.js!
13年6月23日日曜日
ご清聴ありがとうございました
13年6月23日日曜日

Weitere ähnliche Inhalte

Ähnlich wie Scala.jsプロジェクト作成まで

Scala Daysに行ってみて
Scala Daysに行ってみてScala Daysに行ってみて
Scala Daysに行ってみてKota Mizushima
 
Movable Type 6 Overview - New York Perl Mongers Tech Talk
Movable Type 6 Overview - New York Perl Mongers Tech TalkMovable Type 6 Overview - New York Perl Mongers Tech Talk
Movable Type 6 Overview - New York Perl Mongers Tech TalkYuji Takayama
 
Scala.jsはじめました!
Scala.jsはじめました!Scala.jsはじめました!
Scala.jsはじめました!K Kinzal
 
Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Hiroshi Ito
 
Scala2.10.x bytecode problems in Android
Scala2.10.x bytecode problems in AndroidScala2.10.x bytecode problems in Android
Scala2.10.x bytecode problems in AndroidTaisuke Oe
 
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情takezoe
 
Ruby使いのためのScalaのススメ
Ruby使いのためのScalaのススメRuby使いのためのScalaのススメ
Ruby使いのためのScalaのススメOuka Yuka
 
Integration Technology of Ruby and DB.
Integration Technology of Ruby and DB.Integration Technology of Ruby and DB.
Integration Technology of Ruby and DB.Tamotsu Furuya
 
Introduction to cocoa sql mapper
Introduction to cocoa sql mapperIntroduction to cocoa sql mapper
Introduction to cocoa sql mappermavelph
 
スケーラブルなアプリケーション開発を考える
スケーラブルなアプリケーション開発を考えるスケーラブルなアプリケーション開発を考える
スケーラブルなアプリケーション開発を考えるYusaku Watanabe
 
【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.js【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.jsYuto Suzuki
 
Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1daisuke shimizu
 
R5 3 type annotation
R5 3 type annotationR5 3 type annotation
R5 3 type annotationEIICHI KIMURA
 
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)Kentaro Masuda
 
Bitter Sweet Javascript
Bitter Sweet JavascriptBitter Sweet Javascript
Bitter Sweet JavascriptDaichi Hiroki
 
Scalaの現状と課題
Scalaの現状と課題Scalaの現状と課題
Scalaの現状と課題Kota Mizushima
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発emasaka
 

Ähnlich wie Scala.jsプロジェクト作成まで (20)

Scala Daysに行ってみて
Scala Daysに行ってみてScala Daysに行ってみて
Scala Daysに行ってみて
 
Movable Type 6 Overview - New York Perl Mongers Tech Talk
Movable Type 6 Overview - New York Perl Mongers Tech TalkMovable Type 6 Overview - New York Perl Mongers Tech Talk
Movable Type 6 Overview - New York Perl Mongers Tech Talk
 
Scala.jsはじめました!
Scala.jsはじめました!Scala.jsはじめました!
Scala.jsはじめました!
 
aws_opsworks
aws_opsworksaws_opsworks
aws_opsworks
 
Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks
 
Scala2.10.x bytecode problems in Android
Scala2.10.x bytecode problems in AndroidScala2.10.x bytecode problems in Android
Scala2.10.x bytecode problems in Android
 
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
 
Scala conf2013
Scala conf2013 Scala conf2013
Scala conf2013
 
Ruby使いのためのScalaのススメ
Ruby使いのためのScalaのススメRuby使いのためのScalaのススメ
Ruby使いのためのScalaのススメ
 
Integration Technology of Ruby and DB.
Integration Technology of Ruby and DB.Integration Technology of Ruby and DB.
Integration Technology of Ruby and DB.
 
Introduction to cocoa sql mapper
Introduction to cocoa sql mapperIntroduction to cocoa sql mapper
Introduction to cocoa sql mapper
 
スケーラブルなアプリケーション開発を考える
スケーラブルなアプリケーション開発を考えるスケーラブルなアプリケーション開発を考える
スケーラブルなアプリケーション開発を考える
 
scala-kaigi1-sbt
scala-kaigi1-sbtscala-kaigi1-sbt
scala-kaigi1-sbt
 
【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.js【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.js
 
Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1
 
R5 3 type annotation
R5 3 type annotationR5 3 type annotation
R5 3 type annotation
 
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
 
Bitter Sweet Javascript
Bitter Sweet JavascriptBitter Sweet Javascript
Bitter Sweet Javascript
 
Scalaの現状と課題
Scalaの現状と課題Scalaの現状と課題
Scalaの現状と課題
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
 

Scala.jsプロジェクト作成まで