0

私は重い電子商取引アプリに取り組んでいます。このようなアプリでは、追跡は大きな懸念事項です。ユーザーが機能 x を使用するのか、ボタン y などをクリックするのかを知ることは非常に重要です。

たとえば、ヘッダーの検索ボタンをクリックするか、アプリ全体のキーボード コマンドを使用して、検索を表示できるとしますCTRL + S

そのようなものを追跡したい場合、どのように処理するのが最善の方法でしょうか。私は熟考し、その間をディザリングします(JavaScriptここでは疑似を使用しますが、言語は実際には問題ではありません):

1. アクションが発生した場所を直接追跡するだけです。

function searchButtonClicked{
    //this event will be raised anyway to be catched somewhere else to bring up the search
    raiseEvent('searchButtonClicked');
    //now directly track the stuff here
    trackingService.trackEvent('searchButtonClicked');
}

と...

2. アクションのイベントを発生させてから、trackingService でそれらをキャッチします。

function searchButtonClicked{
    //this event will be raised anyway to be catched somewhere else to bring up the search
    raiseEvent('searchButtonClicked');
}

...そしてtrackingServiceのどこかに

onEvent('searchButtonClicked', function(){
   track('searchButtonClicked');
});

したがって、一見すると2.は、trackingService. 彼らは追跡が存在することさえ知りません。さらに、既存のイベントの一部はおそらく再利用できます。ただし、これはイベントの小さなサブセットにのみ当てはまります。ほとんどのイベントは、多かれ少なかれ追跡のためだけに発生します。では、その抽象化の層が本当に必要なのだろうか?

このような追跡は、ロギングと大差ないように思われます。イベントが発生した場所で直接ロギングすることは、受け入れられている方法だと思いますね。

4

2 に答える 2

0

JavaScript でこれを行っている場合は、JQuery などのライブラリを使用すると作業が楽になります。それ以外の場合は、コードにイベント登録とリスナー メカニズムが必要です。

bind() 関数の下の例はこちらを確認してください

$( "#searchButton" ).bind( "click", function() {
  track('searchButtonClicked');
})
于 2013-11-01T00:37:21.003 に答える