-1

このhttp://code.google.com/p/jslibs/wiki/JavascriptTipsサイトJavascriptからヒントを学んでいます。

について見に来ましたFactory method pattern。彼らは次の例を示しました

Complex = new function() {

        function Complex(a, b) {
                // ...
        }

        this.fromCartesian = function(real, mag) {

                return new Complex(real, imag);
        }

        this.fromPolar = function(rho, theta) {

                return new Complex(rho * Math.cos(theta), rho * Math.sin(theta));
        }
}


var c = Complex.fromPolar(1, Math.pi); // Same as fromCartesian(-1, 0);

しかし、なぜ実際にこれが と呼ばれているのか推測できませんFactory method pattern。これとこれを使用する利点について知りたいですFactory method pattern。特に、これを正確に使用する場所を知りたいです。

4

1 に答える 1

2

Factory パターンは、クラス インスタンスを作成する関数として記述できます (実際の工場が車やおもちゃなどを生産するように)。あなたの例では、Complex は、デカルトまたは極性の 2 つの方法でインスタンスを作成できるファクトリです。

Factory パターンは、次のようなさまざまなシナリオで役立ちます。

  • Factory は、インスタンスの作成に必要な情報 (シーケンス番号、または通常はより複雑なもの) を保持します。
  • ファクトリはインスタンスを存続期間にわたって維持します (リソースのプールなど)。
于 2012-12-11T06:38:12.900 に答える