what is play
DESCRIPTION
Playframework meetup in tokyo held at 08/Oct/2011TRANSCRIPT
![Page 1: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/1.jpg)
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日土曜日
![Page 2: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/2.jpg)
自己紹介
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日土曜日
![Page 3: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/3.jpg)
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日土曜日
![Page 4: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/4.jpg)
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日土曜日
![Page 5: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/5.jpg)
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日土曜日
![Page 6: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/6.jpg)
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日土曜日
![Page 7: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/7.jpg)
いろんな見方がありますが
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日土曜日
![Page 8: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/8.jpg)
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日土曜日
![Page 9: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/9.jpg)
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日土曜日
![Page 10: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/10.jpg)
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日土曜日
![Page 11: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/11.jpg)
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日土曜日
![Page 12: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/12.jpg)
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日土曜日
![Page 13: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/13.jpg)
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日土曜日
![Page 14: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/14.jpg)
鈍重な開発サイクル行き過ぎた抽象化多過ぎる環境設定と言った伝統的な 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日土曜日
![Page 15: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/15.jpg)
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
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日土曜日
![Page 16: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/16.jpg)
開発時間が限りなくゼロに近いとき未来の開発に向けた抽象化に挑戦するのではなく速やかにアプリケーションの機能開発や試験に向けて集中するべきです
至言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日土曜日
![Page 17: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/17.jpg)
百聞は一見にしかずライブコーディングします
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日土曜日
![Page 18: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/18.jpg)
作るもの
簡単な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日土曜日
![Page 19: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/19.jpg)
スタート
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日土曜日
![Page 20: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/20.jpg)
どうでしたか
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日土曜日
![Page 21: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/21.jpg)
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日土曜日
![Page 22: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/22.jpg)
これが 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日土曜日
![Page 23: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/23.jpg)
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日土曜日
![Page 24: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/24.jpg)
高い生産性
素直な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日土曜日
![Page 25: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/25.jpg)
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日土曜日
![Page 26: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/26.jpg)
素直な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日土曜日
![Page 27: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/27.jpg)
素直な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日土曜日
![Page 28: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/28.jpg)
素直な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日土曜日
![Page 29: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/29.jpg)
シェアードナッシング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日土曜日
![Page 30: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/30.jpg)
シェアードナッシングステートフルでコンポーネントベースの 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日土曜日
![Page 31: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/31.jpg)
シェアードナッシングステートフルでコンポーネントベースの 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日土曜日
![Page 32: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/32.jpg)
非同期 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日土曜日
![Page 33: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/33.jpg)
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日土曜日
![Page 34: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/34.jpg)
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日土曜日
![Page 35: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/35.jpg)
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日土曜日
![Page 36: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/36.jpg)
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日土曜日
![Page 37: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/37.jpg)
関数型プログラミングのフレーバー
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日土曜日
![Page 38: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/38.jpg)
全ては 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日土曜日
![Page 39: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/39.jpg)
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日土曜日
![Page 40: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/40.jpg)
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日土曜日
![Page 41: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/41.jpg)
現実主義者でもある
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日土曜日
![Page 42: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/42.jpg)
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日土曜日
![Page 43: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/43.jpg)
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日土曜日
![Page 44: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/44.jpg)
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日土曜日
![Page 45: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/45.jpg)
高い生産性
素直な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日土曜日
![Page 46: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/46.jpg)
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日土曜日
![Page 47: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/47.jpg)
誰が使っているのか
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日土曜日
![Page 48: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/48.jpg)
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日土曜日
![Page 49: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/49.jpg)
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日土曜日
![Page 50: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/50.jpg)
コーポレイトサイト構築に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日土曜日
![Page 51: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/51.jpg)
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日土曜日
![Page 52: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/52.jpg)
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日土曜日
![Page 53: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/53.jpg)
社内ツールとして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日土曜日
![Page 54: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/54.jpg)
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日土曜日
![Page 55: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/55.jpg)
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日土曜日
![Page 56: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/56.jpg)
サービス構築に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日土曜日
![Page 57: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/57.jpg)
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日土曜日
![Page 58: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/58.jpg)
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日土曜日
![Page 59: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/59.jpg)
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日土曜日
![Page 60: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/60.jpg)
一部コンポーネントに 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日土曜日
![Page 61: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/61.jpg)
その他 _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日土曜日
![Page 62: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/62.jpg)
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日土曜日
![Page 63: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/63.jpg)
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日土曜日
![Page 64: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/64.jpg)
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日土曜日
![Page 65: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/65.jpg)
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日土曜日
![Page 66: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/66.jpg)
特徴的なプラグイン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日土曜日
![Page 67: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/67.jpg)
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日土曜日
![Page 68: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/68.jpg)
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日土曜日
![Page 69: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/69.jpg)
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日土曜日
![Page 70: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/70.jpg)
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日土曜日
![Page 71: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/71.jpg)
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日土曜日
![Page 72: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/72.jpg)
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日土曜日
![Page 73: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/73.jpg)
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日土曜日
![Page 74: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/74.jpg)
レンタルサーバ等を借りて自分で構築
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日土曜日
![Page 75: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/75.jpg)
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日土曜日
![Page 76: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/76.jpg)
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日土曜日
![Page 77: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/77.jpg)
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日土曜日
![Page 78: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/78.jpg)
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日土曜日
![Page 79: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/79.jpg)
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日土曜日
![Page 80: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/80.jpg)
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日土曜日
![Page 81: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/81.jpg)
どう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日土曜日
![Page 82: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/82.jpg)
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日土曜日
![Page 83: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/83.jpg)
11年10月8日土曜日
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
![Page 84: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/84.jpg)
Scalaのネイティブサポート
SBTの導入(Pythonの廃止)
テンプレートエンジンもScala(Groovyの廃止)
Akkaの導入
11年10月8日土曜日
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
![Page 85: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/85.jpg)
まだまだPreviewでわからないことが多い
今後の勉強会でフォローしていきたい
11年10月8日土曜日
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
![Page 86: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/86.jpg)
この後もhellip今日は Play について語らいましょう
11年10月8日土曜日
ご清聴ありがとうございました
11年10月8日土曜日
![Page 87: What is play](https://reader030.vdocument.in/reader030/viewer/2022013100/54505404af7959d40b8b4833/html5/thumbnails/87.jpg)
ご清聴ありがとうございました
11年10月8日土曜日