Grande articolo su Meteor Blog : utilizzare angular-meteor per creare un MEAN stack super efficiente! Continua la lettura di Angular-Meteor
Archivi categoria: Real-Time Web
Object.observe()
Stiamo per dire addio ai vari framework mvc (Angular, Meteor, Dart ecc)?
Non ancora. Ma il nuovo metodo Object.observe() darà un grande impulso allo sviluppo di applicazione Web Real Time più compatte e veloci.
Uso il futuro perchè al momento questa tecnologia, che è una anticipazione di quello che ci porterà ES7, è supportata solamente da Chrome 36 e Opera 23, quindi oggi solo pochi fortunati si possono divertire!!!
Cosa fa Object.observe() ?
Questo metodo attacca ad un generico oggetto JS una callback che reagisce (viene invocata) a qualsiasi variazione avviene sull’oggetto stesso:
// definiamo un oggetto di nome user con due // proprietà: nome e anno_nascita var user = { nome: 'Alessandro', anno_nascita: 1990 }; // collega una callback con observe() // attenzione: changes è un array!! Object.observe( obj, function(changes) { console.log(changes); }); user.nome = 'Alex'; // sulla console appare un messaggio che indica: // la proprietà modificata, // il nome dell'oggetto, // il tipo di modifica, // il valore della proprietò prima della modifica // [{name: 'nome', object: <user>, type: 'update', oldValue: 'Alessandro'}]
.observe reagisce a 6 tipi di variazione:
- add
- update
- delete
- reconfigure
- set_prototype
- prevent_extension
add, update e delete si riferiscono alla aggiunta, modifica ed eliminazione di proprietà dell’oggetto.
Quanto è veloce?
Da test effettuati risulta che rispetto all’utilizzo di AngularJS il metodo observe() è dal 20 a 40 volte più veloce!
Meteor è nella top ten di GitHub
Meteor è entrato nella lista dei 10 progetti più stellati di GitHub.
Ricordiamo i principi fondamentali di questo framework, citando il sito www.meteor.com:
Principles of Meteor
- Data on the Wire. Meteor doesn’t send HTML over the network. The server sends data and lets the client render it.
- One Language. Meteor lets you write both the client and the server parts of your application in JavaScript.
- Database Everywhere. You can use the same methods to access your database from the client or the server.
- Latency Compensation. On the client, Meteor prefetches data and simulates models to make it look like server method calls return instantly.
- Full Stack Reactivity. In Meteor, realtime is the default. All layers, from database to template, update themselves automatically when necessary.
- Embrace the Ecosystem. Meteor is open source and integrates with existing open source tools and frameworks.
- Simplicity Equals Productivity. The best way to make something seem simple is to have it actually be simple. Meteor’s main functionality has clean, classically beautiful APIs.
OpenWebRTC
Un framework open source per WebRTC progettato per dispositivi mobile.
Con OpenWebRtc è stato sviluppato Bowser, un browser WebRtc per iOS
Meteor 1.1 supporta Microsoft Windows
Rilasciata la versione 1.1 del framework isomorfico Meteor per applicazioni web real time.
Annunciato il supporto per Microsoft Windows e MongoDB 3.0
PeerJS : una semplice libreria peer-to-peer con WebRTC
Questa libreria javascript permette di testare in modo semplice le funzionalità di WebRTC
Dart 1.9 – la release che stavate aspettando !
La release 1.9 di Dart, il nuovo linguaggio di programmazione di Google che compilato produce codice Javascript, presenta il nuovo metodo async da utilizzare insieme alla espressione await:
Meteor e Qt
In questo interessantissimo articolo pubblicato sul blog di Attila Csipa, viene mostrato il risultato di un matrimonio misto tra una applicazione Qt/QML e un backend Meteor, sfruttando il Data Distribution Protocol di quest’ultimo.
Realtime Rails con Sync
Sync è una gemma che provoca il refresh di un render partial in risposta ad un evento che si verifica lato server, consentendo così la realizzazione di web applications che rispondono in tempo reale ad eventi remoti.
Sync deve appoggiarsi ad un servizio di inoltro asincrono di messaggi e le opzioni possibili sono Pusher oppure Faye (quest’ultimo basato sul protocollo Bayeux).