質問編集履歴
2
title
CHANGED
File without changes
|
body
CHANGED
@@ -11,10 +11,10 @@
|
|
11
11
|
* APIを叩く
|
12
12
|
|
13
13
|
といった具合の分解能にしました。
|
14
|
-
ですが、リクエストを作る、と言ってもベースのURLとパラメーター用のDictionaryを渡したら、いい感じに結合した文字列を返してくれるものであればいいので、わざわざインスタンス化して状態を保持する必要はないと思います。
|
14
|
+
ですが、リクエストを作る、と言ってもベースのURLとパラメーター用のDictionaryを渡したら、いい感じに結合した文字列を返してくれるものであればいいので、わざわざインスタンス化してフィールドや状態を保持する必要はないと思います。
|
15
15
|
また、APIを叩く、も、文字列URLを受け取ってそこにリクエストを飛ばすだけで、その文字列に対して他の操作をすることはないので、これも状態を保持する必要がないように思えます。
|
16
16
|
DBに関しては接続情報などの関係でインスタンス化したほうが管理しやすいかもしれませんが、この場合だと1箇所にしか接続することがなく、接続情報をconstで定義していれば、インスタンス化の意味がない気がします。
|
17
|
-
こ
|
17
|
+
staticを使うことが適切であるかは分かりませんが、ただnewせずに使えるという1点において、staticで書けそうな多分をstaticで書いていると全部staticになってしまいました。
|
18
18
|
staticで書いていてはオブジェクト指向の意味がなくなってしまうとは思うのですが、状態を保持する必要がないものまで、ちゃんとインスタンス化して関数を使ったほうが良いのでしょうか?
|
19
19
|
それとも、今回のようなUtility用途だらけであれば、staticばかりになってしまってもよいのでしょうか?
|
20
20
|
趣味で作ってはいますが、業務シーンと同等の作り込みをしたいので、パフォーマンス、メンテナンス性、可読性、他、の観点から指摘頂きたいです。
|
1
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,9 +1,8 @@
|
|
1
|
-
|
1
|
+
オブジェクト指向言語を用いた開発においてstatic関数だらけになることがあっていいのでしょうか?
|
2
2
|
ググってもあまり納得できる回答が見つからなかったため、こういった場所で質問させていただくことにしました。
|
3
|
+
質問する場所が違うようでしたら、お手数ですが、適していると思われる場所(サイト)を教えていただけると幸いです。
|
3
4
|
|
4
|
-
私は普段、オブジェクト指向での開発なのにstatic関数を使いがちになってしまいます。
|
5
|
-
もちろん、何でもかんでもというわけではないのですが、ほぼ、何でもかんでものような状態になってしまいます。
|
6
|
-
|
5
|
+
「Azure Function を叩くとDBを見に行ってそのデータをもとにリクエストを作って別のAPIを叩く」というものを趣味で作っています。
|
7
6
|
このDLLを作るにあたって、私は
|
8
7
|
* エントリーポイント
|
9
8
|
* 以下を流れで行う関数
|
@@ -11,15 +10,13 @@
|
|
11
10
|
* リクエストを作る
|
12
11
|
* APIを叩く
|
13
12
|
|
14
|
-
|
13
|
+
といった具合の分解能にしました。
|
15
14
|
ですが、リクエストを作る、と言ってもベースのURLとパラメーター用のDictionaryを渡したら、いい感じに結合した文字列を返してくれるものであればいいので、わざわざインスタンス化して状態を保持する必要はないと思います。
|
16
|
-
また、APIを叩く、も文字列URLを受け取ってそこにリクエストを飛ばすだけで、その文字列に対して他の操作をすることはないので、これも状態を保持する必要がないように思えます。
|
15
|
+
また、APIを叩く、も、文字列URLを受け取ってそこにリクエストを飛ばすだけで、その文字列に対して他の操作をすることはないので、これも状態を保持する必要がないように思えます。
|
17
16
|
DBに関しては接続情報などの関係でインスタンス化したほうが管理しやすいかもしれませんが、この場合だと1箇所にしか接続することがなく、接続情報をconstで定義していれば、インスタンス化の意味がない気がします。
|
18
|
-
|
17
|
+
このような感覚で書いていると、全部static関数で書けてしまいました。
|
19
|
-
もちろん、staticで書いていてはオブジェクト指向の意味がない事はわかっています。
|
20
|
-
ただの関数型プログラミングになってしまっていることは理解しています。
|
21
|
-
が、状態を保持する必要がないものまで、ちゃんとインスタンス化して関数を使ったほうが良いのでしょうか?
|
18
|
+
staticで書いていてはオブジェクト指向の意味がなくなってしまうとは思うのですが、状態を保持する必要がないものまで、ちゃんとインスタンス化して関数を使ったほうが良いのでしょうか?
|
22
19
|
それとも、今回のようなUtility用途だらけであれば、staticばかりになってしまってもよいのでしょうか?
|
23
|
-
パフォーマンス、メンテナンス性、可読性
|
20
|
+
趣味で作ってはいますが、業務シーンと同等の作り込みをしたいので、パフォーマンス、メンテナンス性、可読性、他、の観点から指摘頂きたいです。
|
24
21
|
|
25
22
|
また、そもそも設計が悪い、という指摘がありましたら、具体的に良くない点と、改善案をお教えいただけると幸いです。
|