AngularJS:ファクトリの代わりにサービスを使用する場合
ここで我慢してください。AngularJS:サービスvsプロバイダーvsファクトリーのような他の答えがあることを知っています。 しかし、いつ工場でサービスを利用するかはまだわかりません。 ファクトリーは、複数のコントローラーから呼び出すことができる「共通の」関数を作成するために一般的に使用されていることがわかります。共通のコントローラー関数の作成 Angularのドキュメントはサービスよりもファクトリを好むようです。さらに混乱を招くファクトリーを使用するとき、彼らは「サービス」にさえ言及します!http://docs.angularjs.org/guide/dev_guide.services.creating_services では、いつサービスを利用するのでしょうか? サービスでしかできない、またははるかに簡単なことはありますか? 舞台裏で起こっている何か違うことはありますか?パフォーマンス/メモリの違い? ここに例があります。宣言の方法を除いて、それらは同じように見え、なぜ私が一方を他方に対して行うのか理解できません。http://jsfiddle.net/uEpkE/ 更新: Thomasの回答から、サービスがより単純なロジック用であり、プライベートメソッドを使用したより複雑なロジック用のファクトリーであることが示唆されているため、以下のフィドルコードを更新し、どちらもプライベート関数をサポートできるようです? myApp.factory('fooFactory', function() { var fooVar; var addHi = function(foo){ fooVar = 'Hi '+foo; } return { setFoobar: function(foo){ addHi(foo); }, getFoobar:function(){ return fooVar; } }; }); myApp.service('fooService', function() { var fooVar; var addHi = function(foo){ fooVar = 'Hi '+foo;} this.setFoobar …