タグ付けされた質問 「factory」

19
FactoryとAbstract Factoryのデザインパターンの基本的な違いは何ですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 2年前休業。 ファクトリパターンと抽象ファクトリパターンの基本的な違いは何ですか?


7
デザインパターン:ファクトリvsファクトリメソッドvs抽象ファクトリ
ウェブサイトからデザインパターンを読んでいた そこで、ファクトリー、ファクトリーメソッド、アブストラクトファクトリーについて読みましたが、それらは非常に混乱しており、定義が明確ではありません。定義によると ファクトリ-インスタンス化ロジックをクライアントに公開せずにオブジェクトを作成し、共通のインターフェースを介して新しく作成されたオブジェクトを参照します。ファクトリーメソッドの簡易バージョンです ファクトリメソッド-オブジェクトを作成するためのインターフェイスを定義しますが、インスタンス化するクラスをサブクラスに決定させ、共通のインターフェイスを通じて新しく作成されたオブジェクトを参照させます。 抽象ファクトリー-クラスを明示的に指定せずに、関連オブジェクトのファミリーを作成するためのインターフェースを提供します。 Abstract FactoryとFactory Methodに関する他のスタックオーバーフロースレッドも調べましたが、そこに描画されたUMLダイアグラムは理解をさらに悪くします。 誰か教えてください これら3つのパターンはどのように違うのですか? いつ使用するのですか? また、可能であれば、これらのパターンに関連するJavaの例はありますか?

11
メソッドのようなファクトリーに名前を付けるには?
ほとんどのファクトリーライクなメソッドはで始まると思いますcreate。しかし、なぜ「作成」と呼ばれるのですか?「make」、「produce」、「build」、「generate」、または他の何かをしてみませんか?それは好みの問題だけですか?慣習?それとも「作成」には特別な意味があるのでしょうか? createURI(...) makeURI(...) produceURI(...) buildURI(...) generateURI(...) 一般的にどちらを選択しますか?その理由は?

9
クラス名を保持する文字列からオブジェクトをインスタンス化する方法はありますか?
私はファイルを持っています:Base.h class Base; class DerivedA : public Base; class DerivedB : public Base; /*etc...*/ および別のファイル:BaseFactory.h #include "Base.h" class BaseFactory { public: BaseFactory(const string &sClassName){msClassName = sClassName;}; Base * Create() { if(msClassName == "DerivedA") { return new DerivedA(); } else if(msClassName == "DerivedB") { return new DerivedB(); } else if(/*etc...*/) { …

3
java:comp / env /は何をしますか?
JNDIファクトリーBeanを接続するときに、いくつかのエラーを理解しようとするのに、あまりにも多くの時間を費やしました。問題はこれの代わりにそれであることが判明しました... <bean id="someId" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/loc"/> </bean> 私は実際にこれを書いた... <bean id="someId" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/loc"/> </bean> 私はjava:comp/env/おそらくいくつかの環境変数を参照し、最終的に私のコンテキストファイルが見られるようにすることを推測します。唯一の違いはjava:comp/env/です。専門家の口から、それは何をしますか? なければjava:comp/env/価値の接頭辞、私が言ったエラーになるだろう「名前のJDBCは、このコンテキストでバインドされていない」と。
116 spring  jdbc  jndi  factory 

17
C#のファクトリパターン:オブジェクトインスタンスがファクトリクラスによってのみ作成されることを確実にする方法は?
最近、自分のコードの一部を保護することを考えています。オブジェクトが直接作成されないようにするにはどうすればよいのか興味がありますが、ファクトリクラスのメソッドを介してのみ作成できます。「ビジネスオブジェクト」クラスがあり、このクラスのインスタンスが有効な内部状態になるようにしたいとします。これを実現するには、オブジェクトを作成する前に、おそらくそのコンストラクタで、いくつかのチェックを実行する必要があります。このチェックをビジネスロジックの一部にすることを決定するまで、これで問題ありません。それでは、ビジネスロジッククラスのいくつかのメソッドを介してのみ、直接ではなく、ビジネスオブジェクトを作成できるようにするにはどうすればよいでしょうか。C ++の古き良き「フレンド」キーワードを使用する最初の自然な欲求は、C#では不十分です。他のオプションが必要です... いくつかの例を試してみましょう: public MyBusinessObjectClass { public string MyProperty { get; private set; } public MyBusinessObjectClass (string myProperty) { MyProperty = myProperty; } } public MyBusinessLogicClass { public MyBusinessObjectClass CreateBusinessObject (string myProperty) { // Perform some check on myProperty if (true /* check is okay */) return new MyBusinessObjectClass (myProperty); …

8
AngularJSの非シングルトンサービス
AngularJSのドキュメントには、サービスはシングルトンであると明記されています。 AngularJS services are singletons 直観に反して、module.factoryシングルトンインスタンスも返します。 シングルトン以外のサービスには多くのユースケースがあることを考えると、Serviceのインスタンスを返すファクトリメソッドを実装して、ExampleService依存関係が宣言されるたびに、異なるインスタンスによって満たされるようにするための最良の方法は何ExampleServiceですか?

5
AngularJS:ファクトリ$ http.getJSONファイル
ハードコードされたJSONファイルだけを使用してローカルで開発したいと考えています。私のJSONファイルは次のとおりです(JSONバリデーターに入れると有効です): { "contentItem": [ { "contentID" : "1", "contentVideo" : "file.mov", "contentThumbnail" : "url.jpg", "contentRating" : "5", "contentTitle" : "Guitar Lessons", "username" : "Username", "realname" : "Real name", "contentTags" : [ { "tag" : "Guitar"}, { "tag" : "Intermediate"}, { "tag" : "Chords"} ], "contentAbout" : "Learn how to play …
84 json  http  angularjs  factory 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.