ウィキの質問かもしれませんが、それでも。どちらのアプローチがより Javascript の精神に準拠していますか。
var Report = function(data) {
var that = this;
that.send = function() { ... };
};
var r = new Report(data); // create and validate the data
r.send(); // encode and send the data
また
var sendReport = function(data) {
...
// create, validate, encode and send the data
...
};
最初のアプローチはよりオブジェクト指向のようですが、2 番目のアプローチはより機能的ですか? 最初は、 の機能がよりテストしやすいように見えるかもしれませんReport
(ただし、たとえばsend()
、この段階でしかありません)。Report
また、状態を調べる必要があるときに、デバッガーで型のオブジェクトを表示するのが好きです。
2 番目のアプローチはより「単純」かもしれませんが、テストしにくいようです。
私は個人的に最初のアプローチをとっていますが、問題は、「間違った」ドメインでオブジェクト指向の「原則」を適用しようとするかどうかです(私の質問をよりよく表現するのを手伝ってください)。