問題タブ [factory-method]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - オブジェクトのファクトリメソッド-ベストプラクティス?
これは、Pythonを使用して同じデータのさまざまな形式からクラスまたはタイプのインスタンスを作成するためのベストプラクティスに関する質問です。クラスメソッドを使用する方が良いですか、それとも別の関数を一緒に使用する方が良いですか?ドキュメントのサイズを説明するために使用されるクラスがあるとしましょう。(注:これは単なる例です。ドキュメントのサイズを説明する最良の方法ではなく、クラスのインスタンスを作成するための最良の方法を知りたいです。)
私の__init__
メソッドはビットで表されたサイズ値を取ります(ビットとビットのみであり、それを維持したい)が、サイズ値がバイトであり、クラスのインスタンスを作成したいとします。クラスメソッドを使用する方が良いですか、それとも別の関数を一緒に使用する方が良いですか?
また
これは問題のようには思えないかもしれませんし、おそらく両方の例が有効ですが、私はこのようなものを実装する必要があるたびにそれについて考えます。クラスとファクトリメソッドを結び付けることの組織的な利点が好きなので、長い間、クラスメソッドアプローチを好みました。また、クラスメソッドを使用すると、サブクラスのインスタンスを作成する機能が保持されるため、オブジェクト指向になります。一方、友人が「疑わしいときは標準ライブラリと同じことをしてください」と言ったことがありますが、私はまだ標準ライブラリでその例を見つけていません。
abstract-factory - 1 つのケースで混乱する、Abstract Factory パターンと Factory Method の違い
「ファクトリ メソッド」と「抽象ファクトリ」の主な違いは、ファクトリ メソッドは単一のメソッドであり、抽象ファクトリはオブジェクトであることです。でも、それが何なのか言えないこともある、例えば
ファクトリメソッドかアブストラクトファクトリか教えていただけますか?ありがとうございます!
c# - プロパティをファクトリ メソッドとして使用する
Base
別のタイプのインスタンスを作成する必要がある基本クラスがありますが、それらを構築する方法を知っているTRequired
のは派生クラスだけです。Base
ファクトリメソッドとして抽象プロパティを使用するのは悪いスタイルですか? 例えば
何らかの理由でメソッドを使用する必要がありますか? ここでプロパティを使用する必要がある/使用しない理由のガイドはありますか?
android - Android の例で、オブジェクトの作成に ScreenSlidePageFragment クラスがファクトリ メソッドを使用する理由
ScreenSlidePageFragment のインスタンスを作成するためにファクトリ メソッドを使用した理由がわかりません。コンストラクターで pageNumber を渡し、そこで mPageNumber に割り当てて、もちろんこのファクトリ メソッドと ARG_PAGE を取り除くことの何が問題になっていますか?! コードは次のとおりです。
}
design-patterns - Factory Method の命名規則は何ですか?
序章
MacApp Macintosh アプリケーション フレームワーク [App89] は、ファクトリ メソッドを Class* DoMakeClass() として定義する抽象操作を常に宣言します。ここで、Class は Product クラスです。
この引用は、Factory Method 設計パターンの命名規則に関する疑問に私を導きました。
期待
明確なファクトリ メソッドの名前付けを提供するベスト プラクティスや役立つ例が見られることを期待しています。
言語に依存する可能性があるため、最も一般的な一連の言語 (C#、Java、C++、および JavaScript) を考えてみましょう。
環境
コンテキストとして、次のクラス構造を検討することを提案します。Document と Application の 2 つの抽象クラスがあります。アプリケーションにはドキュメントのリストが含まれており、新しいドキュメントを作成できる必要があります。アプリケーションにはファクトリ メソッドがありCreateDocument()
ます。
ありがとう
java - Mockito/PowerMockito モック プライベート ファクトリ メソッド
次のリンクで提案されているパターン 1 を使用したい: https://code.google.com/p/mockito/wiki/MockingObjectCreation と次のクラスがあります。
私は次のようにテストをしようとしています:
問題は、ファクトリ メソッドの makeFoo がプライベート メソッドであるため、アクセスできないことです。テストのためだけに公開したくありません。私のテスト クラスも私の生産的なコードと同じパッケージに含まれていないため、パッケージに対してのみ表示することはできません。
更新: 別の問題が見つかりました。makeFoo() がパブリックであると仮定すると、「mockFoo」も返されませんが、実際の makeFoo() メソッドが呼び出されます。これは、makeFoo() (MyClass のコンストラクター内) の呼び出しが mockFoo の作成前に行われるために発生します。
誰かがこの問題を解決する方法を知っていますか、それとも私は何か完全に間違っていますか?
助けてくれてありがとう!