回答編集履歴

3

b-の解説を追記

2022/10/18 14:26

投稿

miyabi_pudding
miyabi_pudding

スコア9528

test CHANGED
@@ -23,4 +23,17 @@
23
23
  ビュー(Angularでいう、html)、コントローラー(Angularでいうservice)、コンポーネント、モデルなどといった構成になっています。
24
24
 
25
25
  > なぜb-をプレフィックスしたファイルが必要なのか?またb-とはどういう意味なのか?(バインディング?)
26
+
27
+ 質問にコードを記載していただき、わかりました。
28
+ b-の方のコンポーネントには、ライフサイクル上の根本的なメソッドの記述がデフォルトで入っているようですね。
29
+ となると、ライフサイクル上の処理を記述するものなのかと。
26
- こちらに関しては、調査中です分かり次第、回答追記を行なっます。
30
+ b-がついない方は、b-クラスをextendしているためb-サブクラスとし定義されています。
31
+ (サブクラスとなっているのは、serviceも同様)
32
+ 以上のことから、
33
+ おそらくではありますが、
34
+ **ベースのb**と思われます。
35
+ 各コンポーネント、サービスの、基礎・根本的な処理、を司るのかと。
36
+
37
+ なので、表向きの実処理は、b-がついてないほうで記述する、など、使い分けができるのでしょう。
38
+ また、サブコンポーネント、サブサービスを増やしたりして、共通処理は、b-に記述し、
39
+ 各サブコンポーネント・サブサービスには、個別の処理を記載する、などの工夫もとれるようになっているのでしょう。

2

他のフレームワークのことも軽く触れた

2022/10/18 02:35

投稿

miyabi_pudding
miyabi_pudding

スコア9528

test CHANGED
@@ -12,8 +12,15 @@
12
12
  そこで、機能自体は、**service**に記述し、複数**component**で読み込む、とすることによって、
13
13
  機能修正などが発生した場合、
14
14
  その**service**一つの修正で完結できるというわけです。
15
+
16
+ 上記も踏まえ、**component**はあくまで、各ファイル等を扱う司令塔、**service**は機能面を司る、テンプレート(HTML)は、見た目を扱う、といった役割分担が、最も適したものになる(Angularの思想に適した)と思われます。
17
+
15
18
  オブジェクト指向の考え方に則していますが、
16
19
  Angularはそのオブジェクトにあたる概念が、**コンポーネント**というわけです。
17
20
 
21
+ また、多くのフレームワークは似た概念で構成されており、
22
+ PHPのフレームワークであるCakePHPは、
23
+ ビュー(Angularでいう、html)、コントローラー(Angularでいうservice)、コンポーネント、モデルなどといった構成になっています。
24
+
18
25
  > なぜb-をプレフィックスしたファイルが必要なのか?またb-とはどういう意味なのか?(バインディング?)
19
26
  こちらに関しては、調査中ですので、分かり次第、回答の追記を行なってまいります。

1

太字の位置がおかしくなっていたので修正

2022/10/18 02:22

投稿

miyabi_pudding
miyabi_pudding

スコア9528

test CHANGED
@@ -4,7 +4,7 @@
4
4
  > serviceとcomponentの役割の違いはなにか?
5
5
  上記から考えても、**componentファイル**を中心に、
6
6
  フレームワーキングしていますので、
7
- **componentファイル**に、**serviceファイル**や、**テンプレートファイル(html)**を読み込んだりしているわけです。
7
+ **componentファイル**に、**serviceファイル**や、**テンプレート(html)ファイル**を読み込んだりしているわけです。
8
8
  **serviceファイル**の役割としては、**component**に拡張機能を与えたり、他の**component**と連携させたりする時に(デリゲートもする)使用します。
9
9
  もちろん、そのほとんどは、**component**内で処理を完結できるのですが、
10
10
  そうしてしまうと、**そのcomponentのみ**にしか使用できない機能となってしまいますので、