what is play
DESCRIPTION
Playframework meetup in tokyo held at 08/Oct/2011TRANSCRIPT
Play の紹介ikeike443
20111008 第二回 Playframework 勉強会 In Tokyo
11年10月8日土曜日
自己紹介
11年10月8日土曜日
ikeike443
池田尚史(いけだたかふみ)
株式会社シャノン
Jenkinsプラグイン開発者
Playframework好き
11年10月8日土曜日
Play の紹介ikeike443
20111008 第二回 Playframework 勉強会 In Tokyo
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotospaulwhaleyphotography133897626
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
自己紹介
11年10月8日土曜日
ikeike443
池田尚史(いけだたかふみ)
株式会社シャノン
Jenkinsプラグイン開発者
Playframework好き
11年10月8日土曜日
Play の紹介ikeike443
20111008 第二回 Playframework 勉強会 In Tokyo
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotospaulwhaleyphotography133897626
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
ikeike443
池田尚史(いけだたかふみ)
株式会社シャノン
Jenkinsプラグイン開発者
Playframework好き
11年10月8日土曜日
Play の紹介ikeike443
20111008 第二回 Playframework 勉強会 In Tokyo
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotospaulwhaleyphotography133897626
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play の紹介ikeike443
20111008 第二回 Playframework 勉強会 In Tokyo
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotospaulwhaleyphotography133897626
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotospaulwhaleyphotography133897626
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Java を LL っぽく使う Web フレームワーク
Servlet コンテナAPI を一切使わない FW
XML 設定ファイルに一切触れなくて済む FW
非同期処理に長けた FW
なんか魔改造してるんでしょ的な FW
Play とは
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
いろんな見方がありますが
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play 自身はこう言っています
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play フレームワークは Java エンタープライズエディション (Java EE) の規約と共にあることよりもW3C の World Wide Web アーキテクチャ に沿うことを優先します
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public class HelloServlet extends HttpServlet public void doGet (HttpServletRequest req HttpServletResponse res)
PrintWriter out = resgetWriter()
outprintln(Hello world) outclose()
ltweb-app xmlns=httpjavasuncomxmlnsj2ee version=24 xmlnsxsi=httpwwww3org2001XMLSchema-instance xsischemaLocation=httpjavasuncomdtdweb-app_2_3dtdgt ltservletgt ltservlet-namegthelloltservlet-namegt ltservlet-classgttestHelloServletltservlet-classgt ltservletgt
ltservlet-mappinggt ltservlet-namegthelloltservlet-namegt lturl-patterngthellolturl-patterngt ltservlet-mappinggtltweb-appgt
こうじゃなく
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public class Hello extends Controller public static void index() render(ldquoHello worldrdquo)
こう書きたい
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な Java web 開発の痛みを伴わない最高の Java プラットフォームを目指しているのが Play というフレームワーク
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
百聞は一見にしかずライブコーディングします
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
作るもの
簡単なDBアプリ
管理画面付き
RESTっぽいAPI付き
10分くらいで
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
スタート
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
どうでしたか
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Servlet はどこへXML 書かなったよねサーバ再起動してないよね
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
これが Play
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosflotaz2471940678
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Servletを捨て素直なHTTPルーティングを実現
JPA も大幅に拡張しスキーマ変更も簡単に
再起動なしのノンストップ開発が可能
高い生産性
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
素直なHTTPルーティング
複雑な XML の設定は必要ない
URL とクエリパラメータをそのままコントローラのクラス名メソッド名メソッド引数にバインドする
開発生産性はとても高くなる
FW 内部では Javassist を使った Byte code enhance が行われている
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
素直なHTTPルーティングもしあなたが Servlet API や Strtus のような Java の Web フレームワークを使っているならばHTTP プロトコルを Java の奇妙な API やコンセプトで抽象化したビューを使ってきたことになります
Web アプリケーションフレームワークは HTTP とそのコンセプトに対して完全かつ容易なアクセス手段を提供すべきですこれが Play とその他の Java web フレームワークの根本的な違いです
至言11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
シェアードナッシングPlayはステートレスなFW
PlayにはHttpSessionはない
Controllersessionの実体はただのCookie
セッション管理にはMemcachedを使うのがおすすめ
セッションレプリケーション なにそれ美味しいの
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
シェアードナッシングステートフルでコンポーネントベースの Java Web フレームワークは自動的にページの状態を保持するのを容易にしますが他に多くの問題をもたらします ユーザがふたつ目のウィンドウを開いたら何が起こるでしょうブラウザの戻るボタンを押したら
Share Nothing アーキテクチャはPHP に始まりRuby on Rails や Django など数多くの Web フレームワークで奨励されていますブラウザがどんどん強力になっていくにつれて今や Ajax やオフラインストレージを使ってクライアントサイドで状態保持の問題を解決することが容易になっています
もう Web に紛い物の状態を再構築するために HTTP モデルをハックする必要はありません
ヒドス11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
非同期 IO
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Nettyによる非同期IOの実現
commons-javaflowのスレッド冬眠技術を利用しJavaで継続プログラミングを実装
WebSocketのサポートも
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public static void generatePDF(Long reportId) PromiseltInputStreamgt pdf = new ReportAsPDFJob(report)now() InputStream pdfStream = await(pdf) renderBinary(pdfStream)
public static void generateLargeCSV() CSVGenerator generator = new CSVGenerator() responsecontentType = textcsv while(generatorhasMoreData()) String someCsvData = await(generatornextDataChunk()) responsewriteChunk(someCsvData)
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
IO部分はnodejsを凌駕するほどの速さ
レンダリングまで含めると Groovy
httpwwwsubbuorgblog201103nodejs-vs-play-for-front-end-apps
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
関数型プログラミングのフレーバー
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
全ては playlibF パッケージに
継続プログラミングモデルの実現
コールバックの実装
パターンマッチングの実装
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public class AsyncTest extends Controller public static void gotchas() paramsput(foo bar) renderArgsput(foo bar) final String foo = bar FPromiseltWSHttpResponsegt remoteCall1 = WSurl(httpsomedata1)getAsync() FPromiseltWSHttpResponsegt remoteCall2 = WSurl(httpsomedata2)getAsync() FPromiseltWSHttpResponsegt remoteCall3 = WSurl(httpsomedata3)getAsync() FPromiseltListltWSHttpResponsegtgt promises = FPromisewaitAll(remoteCall1 remoteCall2 remoteCall3) await(promises new FActionltListltWSHttpResponsegtgt() request suspended here public void invoke(ListltWSHttpResponsegt httpResponses) Systemoutprintln(paramsget(foo)) Systemoutprintln(renderArgsget(foo)) Systemoutprintln(foo) render(httpResponses) ) Systemoutprintln(End) never called
コールバックの実装例
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
public static void echo() while(inboundisOpen()) WebSocketEvent e = await(inboundnextEvent()) for(String quit TextFrameand(Equals(quit))match(e)) outboundsend(Bye) disconnect() for(String msg TextFramematch(e)) outboundsend(Echo s frametextData) for(WebSocketClose closed SocketClosedmatch(e)) Loggerinfo(Socket closed)
パターンマッチングの実装例
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
現実主義者でもある
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
JavaEEを捨て去った
hellipなんて言うけど現実それじゃ使いどころなくね
そんな疑問が出るのも当然です
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
war を生成することも出来ます
代表的なコンテナであれば対応しています
Warサポート
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
高い生産性
素直なHTTPルーティング
シェアードナッシングアーキテクチャ
非同期IOの実現
関数型プログラミングのフレーバー
現実主義者でもある
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosdbrekke276119940
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
誰が使っているのか
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
TypeSafe
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
コーポレイトサイト構築にhttpstwittercomjbonerstatus69394808044654593
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Digg
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
社内ツールとしてhttpaboutdiggcomblogawacs
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
gurdiancouk
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
サービス構築にhttpwwwinfoqcomarticlesguardian_scala
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Klout
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
一部コンポーネントに Play+Scala 採用(中の人 _feripera 曰く)
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Accenture (US)
Verizon
Fannie Mae
Freddie Mac
Foreclosurecom
その他 _felipera 曰く
Accenture Verizon Fannie Mae Freddie Mac Foreclosurecom Other places I deployed Play at
Play Scala RabbitMQ ElasticSearch Hadoop HBase Oozie Flume etc are all part of Klouts stack
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotoslwr168151244
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
特徴的なプラグインScala
Akka
MongoDB Morphia
Redis
SASS SCSS
Coffeescript
Elastic Search (lucene)
VHost
各種 PaaS
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Scala Akka
言わずと知れたScalaプラグイン
最近Playを知った人が関心をもつのはこれ
Akkaのサンプルプログラムもあるよ(Akka supportプラグイン)
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
MongoDB Redis
KVSとして人気のMongoDB Redisのプラグインもあるよ
MongoDBに関してはMorphiaプラグインもあり
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
SASS SCSS
CSSの拡張言語であるSASS SCSSのプラグイン
Play上でSASSが書けるようになる
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
CoffeeScript
ベターJavascriptとして人気のアレのプラグイン
コンパイルするとJavascriptになるアレ
Rails31からデフォルトになったアレ
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Elastic Search (lucene)
luceneをベースにした全文検索プラグイン
ちなみに他にもSimple searchというluceneベースの全文検索プラグインがある
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
VHost
PlayにVirtual Hostの機能をもたせるプラグイン
マルチテナント型のSaaSアプリを作ったりするときに便利かもしれない
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみよう Play の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosjim_rafferty_uk365164119
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
レンタルサーバ等を借りて自分で構築
PaaS を利用する
選択肢は大きく2つ
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Unix Linux MacOSX Windows で動作
JDK5 以上 + Python26 以上
(Win の場合は JDK のみで OK)
自分で構築
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaS
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
HerokuPlayAppsnetCloudbeesCloudfoundry
Google AppEngine
DotCloud
Amazon Beanstalk
PaaSネイティブサポート
warとしてのサポート
プラグインあり
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
どうPlay っていい感じだよね
ここまでが1xの話なので一旦総括する
httpwwwflickrcomphotosfunkimag539799534911年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Play に触れてみようPlay の特徴誰が使っているのか特徴的なプラグインデプロイの選択肢Play20とは
httpwwwflickrcomphotosalphadesigner3833696256
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日