2013-04-05 19 views
11

Momentan spiele ich mit Backbone/Marionette (obwohl die Frage allgemeiner ist), und ich habe eine Menge Code, der Nachrichten über die Anwendung sendet. Nur als Beispiel, so etwas wie diese:Was ist eine gute Möglichkeit, Sub/Pub zu dokumentieren?

vent.on("search:start", function() {...}); 
vent.trigger("search:start"); 

Aber ich habe keine gute Möglichkeit, um die Spur zu kommen (Dokument), welche Nachrichten/Anrufe innerhalb einer Anwendung zur Verfügung stehen.

Also meine Frage ist: Was ist eine gute Möglichkeit, dies zu dokumentieren (Sub/Pub)?

Ich würde annehmen (obwohl ich keinen gefunden habe) könnte es ein Werkzeug geben, mit dem Sie Kommentare (Javadoc-Stil) hinzufügen können, und es wird etwas mehr oder weniger sinnvoll daraus generieren.

+0

Check-out YUI doc - http://yui.github.com/yuidoc/ – imrane

Antwort

0

Vielleicht könnten Sie JS-Signals?

+1

Dies ist ein Pub/Sub-Implementierung; OP bat um eine Empfehlung, wie man Abonnements verfügbar macht. – Mathletics

7

Meine Empfehlung eine große signals.eventConstants zu haben wäre verwenden. Es ist ein Objekt, dessen einziger Zweck es ist, eine Liste von Strings zu halten, die in den Abonnenten oder Herausgeber als die Sache, die Sie veröffentlichen oder abonnieren, gespeichert werden.

Also statt

vent.on("search:start", function() {...}); 
vent.trigger("search:start"); 

tun würden Sie tun

vent.on(signals.eventConstants.searchStart, function() {...}); 
vent.trigger(signals.eventConstants.searchStart); 

Dann haben Sie einen zentralen Ort, wo man für alle überprüfen Ihre Publish/Abo-Sendung Themen, und wenn Sie ändern möchten, den Namen von ihnen, oder fügen Sie später hinzu, Sie haben einen Ort zu überprüfen, damit Sie nicht identische Sendungen erstellen.

Innerhalb von signals.eventConstants können Sie auch den Zweck jedes Signals mit Kommentaren dokumentieren.

Also würde man so etwas haben

//This broadcast will fire when a search is started 
Verwandte Themen