Download - Meteor realtidsramverket
Realtidsramverket
Mina poänger
MVC är inte det enda sättet att bygga webb
Meteor är rätt sätt att koda för realtid
Agenda
Problem idag
Arkitektur för Meteor
Exempel: Luffarschack
Problem idag
Webben är mycket långsammare än ”native”
Dagens webbservrar är inte skrivna för realtid
Komplicerat: För många olika lager
~49 dagar gammalt
Byggt av Fyra (sjukt duktiga) hackers
Byggt på Node.js
Arkitektur
ServerBrowser
<Project>.js
Templates
HTML
MongoDB API
MongoDB API
Session
MongoDB
Realtime data sync
Collections (MongoDB)
Games = new Meteor.Collection("games");
Games.insert({ number: 1, board: generate(), turn: true })
Games.find();
Games.findOne( game_id );
Games.findOne({}, {sort: {number: -1}});
Games.update(game_id, {$set: { board: new_board, turn:
new_turn }})
Templates (handlebars.js)
<body> {{> page}} </body>
<template name="page”>{{#each games}}
<li><a href="#">Game {{number}}</a></li>
{{/each}}</template>
<Project>.js
if (Meteor.is_client){Template.page.games = function(){
return Games.find();}
}
if (Meteor.is_server){ Meteor.startup(function() { if (Games.find().count() === 0) { Games.insert(…) } });}
Exempel: Luffarschack
http://gomoku.meteor.com
https://github.com/EmilStenstrom/meteor-gomoku
Problem idag
Webben är mycket långsammare än ”native”
Ändra gränssnittet direkt, ångra ev. senare
Dagens webbservrar är inte skrivna för realtid
Node.js är gjord för realtidswebben
Komplicerat: För många olika lager
Meteor är enkelt: två lager!
Mina poänger
MVC är inte det enda sättet att bygga webb
Meteor är rätt sätt att koda för realtid
Tack!
@EmilStenstrom [email protected]