Un objet gère une liste de dépendants/observateurs et les notifie automatiquement sur les changements d'état. Pour mettre en œuvre le modèle d'observateur, EventEmitter vient à la rescousse
// MyFancyObservable.js
var util = require('util');
var EventEmitter = require('events').EventEmitter;
function MyFancyObservable() {
EventEmitter.call(this);
}
util.inherits(MyFancyObservable, EventEmitter);
Ceci est; nous venons de faire un objet observable! Pour le rendre utile, ajoutons quelques fonctionnalités.
Très bien, maintenant notre observable peut émettre un événement - essayons-le!
var MyFancyObservable = require('MyFancyObservable');
var observable = new MyFancyObservable();
observable.on('hello', function (name) {
console.log(name);
});
observable.hello('john');
pour plus de détails suivre le lien Fundamental Node.js Design Patterns
Immediate State Updates for REST/HTTP APIs using Observer Pattern
J'ai marqué ce que la réponse car il semble qu'une certaine forme de notification push sera encore nécessaire pour atteindre « réel capacités de temps comme démontré dans le lien partagé – Goodman