Soumettre la recherche
Mettre en ligne
SocketStream入門
•
10 j'aime
•
2,788 vues
Kohei Kadowaki
Suivre
2011年9月24日に大阪にて開催された「第2回 HTML5など勉強会(仮)」で発表したときに使ったプレゼン資料です。
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 38
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
UnityとnodeとMMDと
UnityとnodeとMMDと
sters
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
Unitynetwork
Unitynetwork
Shinsuke Sugita
UnityのフリーライセンスでPC-Android通信を実装するまで
UnityのフリーライセンスでPC-Android通信を実装するまで
Hiroto Makiyama
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【導入編】
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【導入編】
GMO GlobalSign Holdings K.K.
Unityで通信してみよう!
Unityで通信してみよう!
koppepan
Unityとスマートフォンアプリの最適化
Unityとスマートフォンアプリの最適化
COLOPL, Inc.
年の瀬リアルタイム通信サーバ勉強会
年の瀬リアルタイム通信サーバ勉強会
モノビット エンジン
Recommandé
UnityとnodeとMMDと
UnityとnodeとMMDと
sters
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
Unitynetwork
Unitynetwork
Shinsuke Sugita
UnityのフリーライセンスでPC-Android通信を実装するまで
UnityのフリーライセンスでPC-Android通信を実装するまで
Hiroto Makiyama
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【導入編】
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【導入編】
GMO GlobalSign Holdings K.K.
Unityで通信してみよう!
Unityで通信してみよう!
koppepan
Unityとスマートフォンアプリの最適化
Unityとスマートフォンアプリの最適化
COLOPL, Inc.
年の瀬リアルタイム通信サーバ勉強会
年の瀬リアルタイム通信サーバ勉強会
モノビット エンジン
Unity での asset bundle による追加コンテンツの扱い方
Unity での asset bundle による追加コンテンツの扱い方
Kouji Hosoda
ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法
Nohina Hidenari
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
Unity Technologies Japan K.K.
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
Unity2015_No2~Terrain~
Unity2015_No2~Terrain~
CHY72
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
GMO GlobalSign Holdings K.K.
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
Unity Technologies Japan K.K.
関西Unity勉強会
関西Unity勉強会
Masafumi Terazono
50分でわかるブループリントについて
50分でわかるブループリントについて
Masahiko Nakamura
Android gameprogramming
Android gameprogramming
Masahiro Hidaka
猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4
pafuhana 1213
Unity2015_No7_~Unity2D~
Unity2015_No7_~Unity2D~
CHY72
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
Unite2017Tokyo
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
GMO GlobalSign Holdings K.K.
Compaq Contura Aero で NetBSD を動かす
Compaq Contura Aero で NetBSD を動かす
shimadah
自宅サーバ仮想化
自宅サーバ仮想化
anubis_369
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Masataka Tsukamoto
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバ
zgock
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
Nobuhiro Iwamatsu
WebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリ
Kohei Kadowaki
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
Contenu connexe
Tendances
Unity での asset bundle による追加コンテンツの扱い方
Unity での asset bundle による追加コンテンツの扱い方
Kouji Hosoda
ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法
Nohina Hidenari
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
Unity Technologies Japan K.K.
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
Unity2015_No2~Terrain~
Unity2015_No2~Terrain~
CHY72
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
GMO GlobalSign Holdings K.K.
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
Unity Technologies Japan K.K.
関西Unity勉強会
関西Unity勉強会
Masafumi Terazono
50分でわかるブループリントについて
50分でわかるブループリントについて
Masahiko Nakamura
Android gameprogramming
Android gameprogramming
Masahiro Hidaka
猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4
pafuhana 1213
Unity2015_No7_~Unity2D~
Unity2015_No7_~Unity2D~
CHY72
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
Unite2017Tokyo
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
GMO GlobalSign Holdings K.K.
Compaq Contura Aero で NetBSD を動かす
Compaq Contura Aero で NetBSD を動かす
shimadah
自宅サーバ仮想化
自宅サーバ仮想化
anubis_369
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Masataka Tsukamoto
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバ
zgock
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
Nobuhiro Iwamatsu
Tendances
(20)
Unity での asset bundle による追加コンテンツの扱い方
Unity での asset bundle による追加コンテンツの扱い方
ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
Unity2015_No2~Terrain~
Unity2015_No2~Terrain~
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
Unityで PhotonCloudを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編・前編】
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
【Unity道場スペシャル 2017京都】〜ブラウザアプリ・ネイティブアプリの複数プラットフォームのゲーム開発の現場〜
関西Unity勉強会
関西Unity勉強会
50分でわかるブループリントについて
50分でわかるブループリントについて
Android gameprogramming
Android gameprogramming
猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4
Unity2015_No7_~Unity2D~
Unity2015_No7_~Unity2D~
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
【Unite 2017 Tokyo】DIYエフェクト実装: エンジニアレスでエフェクトを組み込める環境づくり
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
Unityで Photonを使ってリアルタイム・マルチプレイヤーゲームを作っちゃおう【応用編】
Compaq Contura Aero で NetBSD を動かす
Compaq Contura Aero で NetBSD を動かす
自宅サーバ仮想化
自宅サーバ仮想化
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバ
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
Similaire à SocketStream入門
WebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリ
Kohei Kadowaki
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Kazuhiro Hara
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
Naoya Ito
AndroidでWebSocket
AndroidでWebSocket
Kohei Kadowaki
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Ryo Nakamaru
Web socket and gRPC
Web socket and gRPC
TIS Inc
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
Yasuhito Yabe
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
崇之 清水
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
fukuoka.ex
もうひとつのNo sql couchdbとは
もうひとつのNo sql couchdbとは
Koji Kawamura
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
Kiyoshi SATOH
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
david9142
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
ThinReports
Node.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャー
Yahoo!デベロッパーネットワーク
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
Saki Homma
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
miso- soup3
PlayFramework1.2.4におけるWebSocket
PlayFramework1.2.4におけるWebSocket
Kazuhiro Hara
densan2014-late01
densan2014-late01
Takenori Nakagawa
Nodejs
Nodejs
Masanobu Masuda
Similaire à SocketStream入門
(20)
WebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリ
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
AndroidでWebSocket
AndroidでWebSocket
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Web socket and gRPC
Web socket and gRPC
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
もうひとつのNo sql couchdbとは
もうひとつのNo sql couchdbとは
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Node.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャー
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
PlayFramework1.2.4におけるWebSocket
PlayFramework1.2.4におけるWebSocket
densan2014-late01
densan2014-late01
Nodejs
Nodejs
Plus de Kohei Kadowaki
Pebble + JavaScriptでつくるスマートウォッチアプリ
Pebble + JavaScriptでつくるスマートウォッチアプリ
Kohei Kadowaki
Firefox OSでSVGをつかってみた
Firefox OSでSVGをつかってみた
Kohei Kadowaki
Inline SVG - トラブルとその対策
Inline SVG - トラブルとその対策
Kohei Kadowaki
Webでもできるデータビジュアライゼーション
Webでもできるデータビジュアライゼーション
Kohei Kadowaki
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門
Kohei Kadowaki
D3.js と SVG によるデータビジュアライゼーション
D3.js と SVG によるデータビジュアライゼーション
Kohei Kadowaki
プログラマーのお仕事
プログラマーのお仕事
Kohei Kadowaki
5分でわかる?Backbone.js ことはじめ
5分でわかる?Backbone.js ことはじめ
Kohei Kadowaki
SVGでつくるインタラクティブWebアプリケーション
SVGでつくるインタラクティブWebアプリケーション
Kohei Kadowaki
UnityでつくるはじめてのPONG
UnityでつくるはじめてのPONG
Kohei Kadowaki
インラインSVGをつかって地図っぽいものをつくってみる
インラインSVGをつかって地図っぽいものをつくってみる
Kohei Kadowaki
ShareWisをFirefoxで動かすためのSVG的とりくみ
ShareWisをFirefoxで動かすためのSVG的とりくみ
Kohei Kadowaki
d3jsではじめるデータビジュアライゼーション入門
d3jsではじめるデータビジュアライゼーション入門
Kohei Kadowaki
WebSocketことはじめ
WebSocketことはじめ
Kohei Kadowaki
Plus de Kohei Kadowaki
(14)
Pebble + JavaScriptでつくるスマートウォッチアプリ
Pebble + JavaScriptでつくるスマートウォッチアプリ
Firefox OSでSVGをつかってみた
Firefox OSでSVGをつかってみた
Inline SVG - トラブルとその対策
Inline SVG - トラブルとその対策
Webでもできるデータビジュアライゼーション
Webでもできるデータビジュアライゼーション
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門
D3.js と SVG によるデータビジュアライゼーション
D3.js と SVG によるデータビジュアライゼーション
プログラマーのお仕事
プログラマーのお仕事
5分でわかる?Backbone.js ことはじめ
5分でわかる?Backbone.js ことはじめ
SVGでつくるインタラクティブWebアプリケーション
SVGでつくるインタラクティブWebアプリケーション
UnityでつくるはじめてのPONG
UnityでつくるはじめてのPONG
インラインSVGをつかって地図っぽいものをつくってみる
インラインSVGをつかって地図っぽいものをつくってみる
ShareWisをFirefoxで動かすためのSVG的とりくみ
ShareWisをFirefoxで動かすためのSVG的とりくみ
d3jsではじめるデータビジュアライゼーション入門
d3jsではじめるデータビジュアライゼーション入門
WebSocketことはじめ
WebSocketことはじめ
Dernier
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Dernier
(10)
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
SocketStream入門
1.
SocketStream⼊入⾨門 2011/9/24 第2回
HTML5など勉強会(仮) kadoppe 1
2.
⾃自⼰己紹介 ! 名前:kadoppe
! Twitter twitter.com/kadoppe ! Blog www.kadoppe.net ! 職業:フリーランスエンジニア ! iOS, Web(Rails, CakePHP, Node.js) ! HTML5-‐‑‒West.jp コアメンバー ! about.me/kadoppe 2
3.
今⽇日のアジェンダ ! SocketStreamって知ってます? ! SocketStreamとは? !
SocketStreamの得意分野・不不得意分野 ! 動作環境、インストール、起動まで ! SocketStreamの特徴 ! SocketStreamのこれから 3
4.
質問 4
5.
SocketStream知ってる? 1. 知らない 2. 名前だけなら 3.
サンプルアプリ動かしてみた 4. ドキュメントにひと通り⽬目を通した 5. アプリつくって公開してみた 5
6.
僕はというと 1. 知らない 2. 名前だけなら
← ⼀一昨⽇日まで 3. サンプルアプリ動かしてみた 4. ドキュメントにひと通り⽬目を通した ← イマココ 5. アプリつくって公開してみた 6
7.
SocketStreamとは? ! フルスタックWebアプリフレームワーク
! Node.jsの上で動作 ! ⾼高性能なSPA (Single-‐‑‒page application) を効率率率よく開発すること⽬目的 ! 様々な技術の上になりたっている ! WebSocket, Socket.IO, Redis, CoffeeScript など 7
8.
SPA(Single-‐‑‒page application) ! 単⼀一のWebページのみで構成される
Webアプリケーション ! ページ遷移なし ! Webのアプリケーションプラット フォーム化に伴い増加傾向? 8
9.
SPAの例例 ! Sudoku
http://www.thomasweibel.ch/sudoku/ 9
10.
SPAの⼀一般的なしくみ 1. 最初のアクセス時に静的なコードをす
べてサーバから取得 • HTML, JavaScript, CSSなど 2. 必要に応じてXHRによりサーバ/ブラ ウザ間でデータを送受信(双⽅方向通信) 3. ページを部分的に更更新 10
11.
XHRによる双⽅方向通信の問題点 ! 接続確⽴立立時の遅延
! ブラウザ/サーバ間で通信が発⽣生する たびに接続を確⽴立立する必要 → 遅延が発⽣生 ! HTTPヘッダのオーバーヘッド ! 本当に送りたいデータと⽐比べてヘッ ダサイズが⼤大きい → 通信効率率率が悪い 11
12.
そこでSocketStream ! サーバ/ブラウザ間のデータのやり取り
にWebSocketを利利⽤用 ! サーバ/ブラウザ間で双⽅方向通信を⾏行行う ためのプロトコル ! 特徴 ! 接続を確⽴立立するのは最初だけ ! HTTPと⽐比べて軽量量なヘッダ より⾼高性能、リアルタイムな Webアプリを実装可能 12
13.
SocketStreamの得意分野 ! サーバ/ブラウザ間でリアルタイムに
データをやりとりする必要があるWeb アプリ ! チャット ! 株取引 ! 位置情報モニタリング ! オンライン格闘ゲームなど 13
14.
SocketStreamの苦⼿手分野 ! 各コンテンツにユニークなURLが必要
なWebアプリ ! ブログなど、コンテンツリッチなサ イト ! CRUD操作が多数発⽣生するWebアプリ ! 業務系Webアプリなど 14
15.
対応ブラウザ ! Chrome, Safari,
Firefox 6 ! WebSocketに対応しているので問題 なく動作 ! IE、古いバージョンのFirefox ! WebSocketに対応していないが Socket.IOにより問題なく動作 15
16.
Demo ! SocketRacer
https://github.com/alz/socketracer 16
17.
動作に必要なもの ! Node.js 0.4.x
! サーバサイドJSの実装の⼀一つ ! NPM 1.0 or above ! Node.jsのモジュール管理理ツール ! Redis 2.2 or above ! KVS(Key-‐‑‒value store)のひとつ 17
18.
インストールからアプリ起動まで ! インストール $ npm
install socketstream -g! ! アプリひな形作成 $ socketstream new sample_app! ! 起動 $ cd sample_app! $ socketstream start! 18
19.
ブラウザからアクセス ! http://localhost:3000
19
20.
SocketStreamの特徴 ! CoffeeScript, Jade,
Stylusをデフォル ト採⽤用 ! シンプルなディレクトリ構造 ! サーバ/ブラウザ間でのRPCを容易易に実装 可能 ! シンプルなPub/Subメッセージング機構 ! ⾼高いスケーラビリティ 20
21.
開発に使う⾔言語 ! ロジック
! CoffeeScript (or JavaScript) ! ビュー ! Jade (or HTML) ! Node.js⽤用テンプレートエンジン ! Stylus (or CSS) ! Node.jsでCSSを簡潔に記述するための モジュール 21
22.
CoffeeScript ! コンパイルするとJavaScriptを⽣生成してくれる便便
利利な⾔言語 ! RubyやPythonの構⽂文の影響を受けている ! 利利点 ! たくさん書かなくて良良い ! JavaScriptのBad Partsを隠してくれる ! 参考 ! 「ちっちゃいCoffeeScriptの本」 http://mnmly.github.com/library/coffeescript/ 22
23.
CoffeeScript → JavaScript CoffeeScript func
= ->! alert "Hello CoffeeScript!"! JavaScript var func; ! func = function() { ! return alert("Hello CoffeeScript!");! };! 23
24.
Jade → HTML Jade
HTML !!! 5! <!DOCTYPE html>! html(lang="en")! <html lang="en">! head! <head>! title= pageTitle! <title>Jade</ body! title>! h1 Jade ! </head>! #container! <body>! - if (UsingJade)! <h1>Jade</h1>! p Thanks!! <div - else! id="container">! p Get on it!! <p>Thanks!</p>! ! ! ! ! !! </div>! ! ! ! !! </body>! </html> ! !! 24
25.
Stylus → CSS Stylus border-radius()
! -webkit-border-radius arguments ! -moz-border-radius arguments ! border-radius arguments ! ! a.button ! border-radius 5px! CSS a.button { ! -webkit-border-radius: 5px; ! -moz-border-radius: 5px;! border-radius: 5px; ! } ! ! ! ! !! ! ! ! !! 25
26.
シンプルなディレクトリ構造 /app!
/client … ブラウザで実⾏行行されるコード /server … サーバで実⾏行行されるコード /shared … ブラウザ/サーバ双⽅方から 参照されるコード /css … Stylus (or CSSファイル) /lib … 外部ライブラリ /public … 静的なファイル(画像など) 26
27.
サーバ/ブラウザ間でのRPC ! RPC(Remote Procedure
Call) ! リモートの関数呼び出し ! 通信はWebSocket上で⾏行行われる ! 例例) ! 引数として与えられた数を2乗して返す 関数をサーバ側に実装 ! サーバ側に実装された関数をブラウザか ら呼び出し 27
28.
サーバ側実装 /app/server/app.coffee exports.actions =
# ブラウザに公開する関数の登録! square: (number, cb) -> # 2乗する関数の実装! cb(number * number)! ! ! SS.server.app.square でブラウザ/サーバ 両⽅方から関数を呼び出せるようになる ! SS 変数 ! ブラウザ/サーバから参照可能なグローバル 変数 ! 各種API、ユーザ定義の関数、オブジェクト への参照を提供 28
29.
ブラウザ側実装 /app/client/app.coffee SS.server.app.square 20, (response)
->! console.log ”20 squared is #{response}” # callback! ! ! SS 変数を介してサーバ側に実装された 関数を呼び出している 29
30.
Pub/Subメッセージング ! 特定のユーザにメッセージをリアルタ
イム配信をするために必要な機能 ! WebSocketを使ってメッセージ配信 ! 例例) ! シンプルなチャットアプリを実装 ! あるユーザーの発⾔言を全ユーザーに ブロードキャスト 30
31.
ブラウザ側実装 /app/client/app.coffee export.init = ->
# サーバとの接続確⽴立立時に呼び出される! SS.event.on(‘message’, (message) -> alert(message))! ! SS.event.on メソッドを介して ”message” イベントにイベントハン ドラを登録 31
32.
サーバ側実装 /app/server/app.coffee SS.publish.broadcast ’message’, ‘Hello
World’! ! SS.publish.broadcast メソッドを 呼び出して、message イベントを発⾏行行 ! 接続している全ブラウザに ”Hello World”という ダイアログが表⽰示 32
33.
⾼高スケーラビリティ ! 複数のCPUコアで複数のSocketStream
インスタンスを起動可能 redis redisを介したSession情報の共有 メッセージのルーティングが可能 Socket Socket Socket Socket Stream Stream Stream Stream 33
34.
その他の特徴 ! WebSocket接続切切断時に⾃自動で再接続
! モバイル環境などで有⽤用 ! ディレクトリ階層を⾃自動的にネームス ペースに展開 /app/server/modules/module_̲a.coffee ↓ SS.server.modules.module_a.func! 34
35.
SocketStreamのこれから ! 現在 v0.2.2
がリリースされている ! v0.3で追加される予定の機能 ! モデルのサポート ! 現在サポートされていないためCRUD操作が 多いアプリケーションには向かない ! Real Time Models という機能が追加予定 ! backbone.jsのサポート ! ブラウザサイドのMVCフレームワーク 35
36.
まとめ ! SocketStream
! SPAを開発するためのNode.js⽤用Webフレーム ワーク ! ⾼高性能なリアルタイムWebアプリケーションを 効率率率的に開発 ! 様々な新しい技術を採⽤用 ! Node.js, WebSocket, Socket.IO, redis, CoffeeScript, Jade, Stylus, backbone.js ! 勉強していると楽しくなるのでぜひトライして みてください 36
37.
参考URL !
SocketStream ! https://github.com/socketstream/socketstream ! WebSocketことはじめ ! http://www.slideshare.net/kadoppe/websocket-‐‑‒8735698 ! Socket.IO ! http://socket.io/ ! CoffeeScript ! http://jashkenas.github.com/coffee-‐‑‒script/ ! Jade ! http://jade-‐‑‒lang.com/ ! Stylus ! http://learnboost.github.com/stylus/ ! Redis ! http://redis.io/ 37
38.
ご清聴ありがとうございました。
38
Télécharger maintenant