Submit Search
Upload
意識低くMeteor紹介
•
4 likes
•
5,215 views
H
hashedrock
Follow
Meteor prototyping presentation
Read less
Read more
Software
Report
Share
Report
Share
1 of 49
Download now
Download to read offline
Recommended
Meteorというフレームワーク
Meteorというフレームワーク
rukiadia
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発
Hironao Sekine
Introduction of mruby & Webruby script example
Introduction of mruby & Webruby script example
kishima7
早く家へ帰るための Grunt入門 [+gulp紹介]
早く家へ帰るための Grunt入門 [+gulp紹介]
Masayuki Maekawa
Gruntの罪と罰
Gruntの罪と罰
kamiyam .
AngularJS2でつまづいたこと
AngularJS2でつまづいたこと
Takehiro Takahashi
Reactつかってみた
Reactつかってみた
Minori Tokuda
ビルド職人の朝は早い
ビルド職人の朝は早い
Masashi MATSUI
Recommended
Meteorというフレームワーク
Meteorというフレームワーク
rukiadia
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発
Hironao Sekine
Introduction of mruby & Webruby script example
Introduction of mruby & Webruby script example
kishima7
早く家へ帰るための Grunt入門 [+gulp紹介]
早く家へ帰るための Grunt入門 [+gulp紹介]
Masayuki Maekawa
Gruntの罪と罰
Gruntの罪と罰
kamiyam .
AngularJS2でつまづいたこと
AngularJS2でつまづいたこと
Takehiro Takahashi
Reactつかってみた
Reactつかってみた
Minori Tokuda
ビルド職人の朝は早い
ビルド職人の朝は早い
Masashi MATSUI
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
Ryunosuke SATO
Alt01-LT
Alt01-LT
Yuta Hiroto
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
Yusuke Murata
Node.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしよう
Yuusuke Takeuchi
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Kohei Asai
Sails.jsのメリット・デメリット
Sails.jsのメリット・デメリット
Ito Kohta
React Redux Redux-Saga + サーバサイドレンダリング
React Redux Redux-Saga + サーバサイドレンダリング
エンジニア勉強会 エスキュービズム
Face APIで開発する時に使っている7つの道具
Face APIで開発する時に使っている7つの道具
Kazuyuki Miyake
Node.js version16の新機能
Node.js version16の新機能
Masaki Suzuki
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
典子 松本
React.js + Reduxで作るSPA
React.js + Reduxで作るSPA
Shohei Saeki
サーバサイドエンジニアが 1年間まじめにSPAやってみた
サーバサイドエンジニアが 1年間まじめにSPAやってみた
Itaru Kitagawa
Reactjs
Reactjs
しくみ製作所
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
AimingStudy
VagrantでAzureを使ってみた話
VagrantでAzureを使ってみた話
Yuta Matsumura
Node.js で Web アプリ開発
Node.js で Web アプリ開発
Tatsumi Naganuma
現実的な「WordPress on Azure App Service」 クイックスタート
現実的な「WordPress on Azure App Service」 クイックスタート
Kazuyuki Miyake
Isomorphic web development with scala and scala.js
Isomorphic web development with scala and scala.js
TanUkkii
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
典子 松本
Node js 入門
Node js 入門
Satoshi Takami
海外で注目されてるJs framework “mithril”の特徴
海外で注目されてるJs framework “mithril”の特徴
Shoyo Kyou
Riot + generator で始める新しいデータバインディング
Riot + generator で始める新しいデータバインディング
Tsutomu Kawamura
More Related Content
What's hot
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
Ryunosuke SATO
Alt01-LT
Alt01-LT
Yuta Hiroto
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
Yusuke Murata
Node.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしよう
Yuusuke Takeuchi
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Kohei Asai
Sails.jsのメリット・デメリット
Sails.jsのメリット・デメリット
Ito Kohta
React Redux Redux-Saga + サーバサイドレンダリング
React Redux Redux-Saga + サーバサイドレンダリング
エンジニア勉強会 エスキュービズム
Face APIで開発する時に使っている7つの道具
Face APIで開発する時に使っている7つの道具
Kazuyuki Miyake
Node.js version16の新機能
Node.js version16の新機能
Masaki Suzuki
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
典子 松本
React.js + Reduxで作るSPA
React.js + Reduxで作るSPA
Shohei Saeki
サーバサイドエンジニアが 1年間まじめにSPAやってみた
サーバサイドエンジニアが 1年間まじめにSPAやってみた
Itaru Kitagawa
Reactjs
Reactjs
しくみ製作所
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
AimingStudy
VagrantでAzureを使ってみた話
VagrantでAzureを使ってみた話
Yuta Matsumura
Node.js で Web アプリ開発
Node.js で Web アプリ開発
Tatsumi Naganuma
現実的な「WordPress on Azure App Service」 クイックスタート
現実的な「WordPress on Azure App Service」 クイックスタート
Kazuyuki Miyake
Isomorphic web development with scala and scala.js
Isomorphic web development with scala and scala.js
TanUkkii
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
典子 松本
Node js 入門
Node js 入門
Satoshi Takami
What's hot
(20)
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
Alt01-LT
Alt01-LT
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
Node.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしよう
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Sails.jsのメリット・デメリット
Sails.jsのメリット・デメリット
React Redux Redux-Saga + サーバサイドレンダリング
React Redux Redux-Saga + サーバサイドレンダリング
Face APIで開発する時に使っている7つの道具
Face APIで開発する時に使っている7つの道具
Node.js version16の新機能
Node.js version16の新機能
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
一度使うとレンタルサーバーに戻れない!?便利機能を使ってみよう!Web制作でのMicrosoft Azure活用方法
React.js + Reduxで作るSPA
React.js + Reduxで作るSPA
サーバサイドエンジニアが 1年間まじめにSPAやってみた
サーバサイドエンジニアが 1年間まじめにSPAやってみた
Reactjs
Reactjs
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
VagrantでAzureを使ってみた話
VagrantでAzureを使ってみた話
Node.js で Web アプリ開発
Node.js で Web アプリ開発
現実的な「WordPress on Azure App Service」 クイックスタート
現実的な「WordPress on Azure App Service」 クイックスタート
Isomorphic web development with scala and scala.js
Isomorphic web development with scala and scala.js
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
Microsoft Azure WebAppsでECサイトを構築してみた話 ~EC-CUBE3で試してみました~
Node js 入門
Node js 入門
Viewers also liked
海外で注目されてるJs framework “mithril”の特徴
海外で注目されてるJs framework “mithril”の特徴
Shoyo Kyou
Riot + generator で始める新しいデータバインディング
Riot + generator で始める新しいデータバインディング
Tsutomu Kawamura
Parseでちゃんとアプリを作るコツ
Parseでちゃんとアプリを作るコツ
Takuya Tejima
Riot.jsと仲良くなるための僕的tips
Riot.jsと仲良くなるための僕的tips
Keisuke Imai
Riot.jsとフォームのデータバインディング
Riot.jsとフォームのデータバインディング
Keisuke Imai
Riotでサーバレスにした話
Riotでサーバレスにした話
Hiroyuki Hara
three.jsを「遅い」と思わせないデータの扱い方
three.jsを「遅い」と思わせないデータの扱い方
jey en
実践Backbone.Marionette 現場の悩みと解決まで
実践Backbone.Marionette 現場の悩みと解決まで
Ryuma Tsukano
ライオンでも分かるVuejs
ライオンでも分かるVuejs
lion-man
Riot.jsに触れてみた話
Riot.jsに触れてみた話
エンジニア勉強会 エスキュービズム
Vue.js入門
Vue.js入門
Takuya Sato
Riot.jsを用いたweb開発 takusuta tech conf #1
Riot.jsを用いたweb開発 takusuta tech conf #1
Keisuke Imai
サイボウズのフロントエンド開発 現在とこれからの挑戦
サイボウズのフロントエンド開発 現在とこれからの挑戦
Teppei Sato
【掲載用】アウトプットし続ける技術20170314
【掲載用】アウトプットし続ける技術20170314
Hayashi Masayuki
Viewers also liked
(14)
海外で注目されてるJs framework “mithril”の特徴
海外で注目されてるJs framework “mithril”の特徴
Riot + generator で始める新しいデータバインディング
Riot + generator で始める新しいデータバインディング
Parseでちゃんとアプリを作るコツ
Parseでちゃんとアプリを作るコツ
Riot.jsと仲良くなるための僕的tips
Riot.jsと仲良くなるための僕的tips
Riot.jsとフォームのデータバインディング
Riot.jsとフォームのデータバインディング
Riotでサーバレスにした話
Riotでサーバレスにした話
three.jsを「遅い」と思わせないデータの扱い方
three.jsを「遅い」と思わせないデータの扱い方
実践Backbone.Marionette 現場の悩みと解決まで
実践Backbone.Marionette 現場の悩みと解決まで
ライオンでも分かるVuejs
ライオンでも分かるVuejs
Riot.jsに触れてみた話
Riot.jsに触れてみた話
Vue.js入門
Vue.js入門
Riot.jsを用いたweb開発 takusuta tech conf #1
Riot.jsを用いたweb開発 takusuta tech conf #1
サイボウズのフロントエンド開発 現在とこれからの挑戦
サイボウズのフロントエンド開発 現在とこれからの挑戦
【掲載用】アウトプットし続ける技術20170314
【掲載用】アウトプットし続ける技術20170314
Similar to 意識低くMeteor紹介
Groovyコンファレンス
Groovyコンファレンス
Shinichiro Takezaki
20141017 introduce razor
20141017 introduce razor
do_aki
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
normalian
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
Risa Yuguchi
ASP. NET Core 汎用ホスト概要
ASP. NET Core 汎用ホスト概要
TomomitsuKusaba
スマートデバイス×HTML5で 企業情報システムはどう変わる? ~最新動向から考えるエンタープライズWebの現在と未来~
スマートデバイス×HTML5で 企業情報システムはどう変わる? ~最新動向から考えるエンタープライズWebの現在と未来~
Shinichi Tomita
.NET の過去、現在、そして未来
.NET の過去、現在、そして未来
Akira Inoue
案件規模で使い分けよう!Microsoft Azure×WordPressの話
案件規模で使い分けよう!Microsoft Azure×WordPressの話
典子 松本
HTML5な今日この頃に贈る、Webデザイナーこれからの生きる道
HTML5な今日この頃に贈る、Webデザイナーこれからの生きる道
Hideki Akiba
カフェのWEBサイトを作って、WEBデザインの基礎と技術を学ぶ
カフェのWEBサイトを作って、WEBデザインの基礎と技術を学ぶ
webcampusschoo
PhpでMySqlを使う
PhpでMySqlを使う
pcod
About rails 3
About rails 3
issei126
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
Hiroh Satoh
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
空のテンプレートから始めるWindows 8 ストアアプリ
空のテンプレートから始めるWindows 8 ストアアプリ
Akira Hatsune
Web制作に便利な機能いろいろ!Microsoft Azureの概要
Web制作に便利な機能いろいろ!Microsoft Azureの概要
典子 松本
かんたん Twitter アプリをつくろう
かんたん Twitter アプリをつくろう
Shuhei Iitsuka
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
Tomoharu ASAMI
Asakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for Hadoop
Takashi Kambayashi
Similar to 意識低くMeteor紹介
(20)
Groovyコンファレンス
Groovyコンファレンス
20141017 introduce razor
20141017 introduce razor
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
ASP. NET Core 汎用ホスト概要
ASP. NET Core 汎用ホスト概要
スマートデバイス×HTML5で 企業情報システムはどう変わる? ~最新動向から考えるエンタープライズWebの現在と未来~
スマートデバイス×HTML5で 企業情報システムはどう変わる? ~最新動向から考えるエンタープライズWebの現在と未来~
.NET の過去、現在、そして未来
.NET の過去、現在、そして未来
案件規模で使い分けよう!Microsoft Azure×WordPressの話
案件規模で使い分けよう!Microsoft Azure×WordPressの話
HTML5な今日この頃に贈る、Webデザイナーこれからの生きる道
HTML5な今日この頃に贈る、Webデザイナーこれからの生きる道
カフェのWEBサイトを作って、WEBデザインの基礎と技術を学ぶ
カフェのWEBサイトを作って、WEBデザインの基礎と技術を学ぶ
PhpでMySqlを使う
PhpでMySqlを使う
About rails 3
About rails 3
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
空のテンプレートから始めるWindows 8 ストアアプリ
空のテンプレートから始めるWindows 8 ストアアプリ
Web制作に便利な機能いろいろ!Microsoft Azureの概要
Web制作に便利な機能いろいろ!Microsoft Azureの概要
かんたん Twitter アプリをつくろう
かんたん Twitter アプリをつくろう
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
Asakusa Enterprise Batch Processing Framework for Hadoop
Asakusa Enterprise Batch Processing Framework for Hadoop
意識低くMeteor紹介
1.
Meteorの紹介 @hashedrock
2.
3.
4.
Webアプリ作れますか
5.
Webアプリ作れますか 泥酔状態で
6.
「理想のインターフェースは、 泥酔状態でも使える」 - 増井俊之
7.
• 飲みながら何か思いつく • Mac取り出してコーディング始める •
動かない • お会計です エンジニア飲み会
8.
酔っ払って コード書くことを想像する
9.
• ログイン • ルーティング •
サーバサイド設計(REST, ORM,…) • WebSocket いろいろ考えることがある…
10.
ちょっと難しい
11.
難しいところは 省略したい
12.
Meteor
13.
Vue.js 作者
14.
Meteorは酔ってても 組めるくらい コードが少ない
15.
ざっくり概要
16.
データモデル ビューモデル ビュー イベント 反映
反映 登場人物少ない
17.
テンプレート {{#each items}} <p>{{_id}} {{name}}</p> {{/each}} だいたいMustache(Handlebars) #ifと#eachで大抵なんとかなる
18.
一方向バインディング Template.main.helpers({ items: callback }) itemsがViewに一方向バインディングされる 「ヘルパ」と呼ばれる
19.
リアクティブ&リアルタイム Template.main.helpers({ items: function(){ return Items.find(); } }) 「カーソル」 変更があれば、再計算される
20.
イベント Template.main.events({ submit .addItem :
callback }) .addItemがSubmitされたら、 設定したCallbackが実行される
21.
酔ってても使える! ポイント1 サーバ書かなくてもいい
22.
データモデル クライアント ビューとか 変更通知
23.
データモデル (ソース) データモデル (コピー) サーバ クライアント 同期 ビューとか 変更通知
24.
MongoDB Minimongo サーバ クライアント 同期 MongoDBとAPIを似せたブラウザ上のDB「Minimongo」 Minimongoに対してコレクション操作することで、 サーバへの通信を待たずにViewに変更を反映させることができる。 サーバ(MongoDB)への差分はあとで送ればよい
25.
データモデル (ソース) データモデル (コピー) サーバ クライアント 同期 ビューとか 変更通知 忘れてよい (意識しなくていい作り)
26.
酔ってても使える! ポイント2 モックから作り込める
27.
酔っていると 抽象度の高い思考は無理
28.
現物をプレビュー しながら作業するのがよい ※Meteorは標準でLiveReload機能が有効
29.
作成の4ステップ 頭を使わず、スムーズに開発できる手順
30.
1. 見た目をまず作る 2. 変数をモックする 3.
モックをDBに差し替え 4. イベントの定義
31.
見た目をまず作る <h1>TODO</h1> <ul> <li>Task 1</li> <li>Task 2</li> <li>Task
3</li> </ul> <form> <input name= name > </form>
32.
<h1>TODO</h1> <ul> {{#each items}} <li>{{name}}</li> {{/each}} </ul> <form> <input name=
name > </form> #ifや#eachなどを使う (1)View
33.
(2)バインディング Template.main.helpers({ items: function(){ return [ {name:
Task 1 }, {name: Task 2 }, {name: Task 3 } ] } }) View上の「items」に 一方向バインド
34.
(3)コレクションのロード Task = new
Meteor.Collection( tasks ); Template.main.helpers({ items: function(){ return [ {name: Task 1 }, {name: Task 2 }, {name: Task 3 } ] } }) ※Meteorでは、クライアント、サーバ双方から 参照する変数は、varを付けずに初期化する
35.
DBからfetch Task = new
Meteor.Collection( tasks ); Template.main.helpers({ items: function(){ return Task.find(); } }) findの他にも、insert, updateなどのメソッドがある
36.
補足 リアルタイム更新の仕組み Task = new
Meteor.Collection( tasks ); Template.main.helpers({ items: function(){ return Task.find(); } }) 「カーソル」 DBに変更があれば、itemsは再計算される Viewも更新される
37.
(4)イベント Template.main.events({ submit form :
function(e){ e.preventDefault(); Task.insert({ name: e.target.name.value }) e.target.name.value = ; } }) 特別なことは何もなし e.targetで、form内のパラメータを取る
38.
39.
MongoDB Collection (もしくはSession) Helpers View Template イベント 反映 反映 Events 変更
40.
まとめ
41.
• 全てがリアルタイムに自動同期 • サーバを書く手間がない •
プロトタイピングに特化したワークフロー =いろいろ考えなくて済む
42.
意識低い状態で 物が作れる
43.
・泥酔時 ・眠い時 ・帰宅後 ・お風呂で
44.
サブウェポンとして 便利
45.
FAQ
46.
Q 認証どうすんの?
47.
A プロジェクト作成直後は、 セキュアではないプラグインが有効。 (autopublishとinsecure) プロトタイピング終了後それらを削除し、 コレクションごとに許可する操作を 設定していくことになる。 参考:Meteor利用時に留意すべきセキュリティリスク
48.
A なお、Meteorには標準の アカウント制御プラグインがある。 OAuthもしくはパスワードによる認証を 組み込むことができ、登録ユーザは「users」コレク ション内で管理される。 詳しくはMeteor Accountsを参照
49.
Fun!
Download now