質問編集履歴

4

文章の軽微な修正

2022/12/14 15:00

投稿

ponyo877
ponyo877

スコア17

test CHANGED
File without changes
test CHANGED
@@ -83,11 +83,12 @@
83
83
  }
84
84
  ```
85
85
 
86
- 先の例の場合は以下のように実行すると全結果取得ができるイメージです。
86
+
87
87
  以下のようなListSomethingA, ListSomethingBが部分取得取得のメソッドでが抽象化の対象になり、共通点はrequestA/requestBにnextTokenとpageSize、responseA/responseBがnextTokenとrowsのメンバ変数を持つことになります。
88
88
  - ListSomethingA(request requestA) responseA
89
89
  - ListSomethingB(request requestB) responseB
90
90
  `json.Unmarshal`のような引数にポインタを入れてそこに結果を格納する形でも良いのですがそれでも良い方法がわかりません。
91
+ 先の例の場合は以下のように実行すると全結果取得ができるイメージです。
91
92
  ```go
92
93
  fmt.Println(NewLooper(/*ListSomethingAやresponseAやrequestA*/).Loop())
93
94
  // 出力結果: [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]

3

抽象化対象の修正

2022/12/14 14:58

投稿

ponyo877
ponyo877

スコア17

test CHANGED
File without changes
test CHANGED
@@ -84,12 +84,14 @@
84
84
  ```
85
85
 
86
86
  先の例の場合は以下のように実行すると全結果取得ができるイメージです。
87
- ListSomething1とListSomething2nextTokenとrequest/responceにpageSizerequestのオブジェクトに持つ別のメソッドになります!
87
+ 以下ようなListSomethingA, ListSomethingBが部分取得取得のメソッドでが抽象化の対象になり、共通点はrequestA/requestBにnextTokenpageSizeresponseA/responseBがnextTokenとrowsメンバ変数を持つことになります
88
+ - ListSomethingA(request requestA) responseA
89
+ - ListSomethingB(request requestB) responseB
88
90
  `json.Unmarshal`のような引数にポインタを入れてそこに結果を格納する形でも良いのですがそれでも良い方法がわかりません。
89
91
  ```go
90
- fmt.Println(NewLooper(/*ListSomething1やresponce1やrequest1*/).Loop())
92
+ fmt.Println(NewLooper(/*ListSomethingAやresponseAやrequestA*/).Loop())
91
93
  // 出力結果: [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]
92
- fmt.Println(NewLooper(/*ListSomething2やresponce2やreques2t*/).Loop())
94
+ fmt.Println(NewLooper(/*ListSomethingBやresponceBやrequestB*/).Loop())
93
95
  // 出力結果: [0 1 2 3 4 5 6 7 8 9 10]
94
96
  ```
95
97
 

2

抽象化対象の可変部分の明記

2022/12/14 12:32

投稿

ponyo877
ponyo877

スコア17

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,5 @@
1
1
  ### 前提
2
- ページ分されたリスト取得APIの結果取得をGo言語クラス化で困っており、実装例していただきたい
2
+ nextTokenとrequest/responceにpageSizeをrequestのオブェクトに持つ別の「部取得」メソッドがありえすば「取得」ができるようする方法しています。
3
3
  また、この投稿はマルチポストになります。他の投稿は以下になります。
4
4
  - https://stackoverflow.com/questions/74782804
5
5
  - https://ja.stackoverflow.com/questions/92728
@@ -84,10 +84,13 @@
84
84
  ```
85
85
 
86
86
  先の例の場合は以下のように実行すると全結果取得ができるイメージです。
87
+ この時ListSomething1とListSomething2はnextTokenとrequest/responceにpageSizeをrequestのオブジェクトに持つ別のメソッドになります!
87
88
  `json.Unmarshal`のような引数にポインタを入れてそこに結果を格納する形でも良いのですがそれでも良い方法がわかりません。
88
89
  ```go
89
- fmt.Println(NewLooper(/*ListSomethingやresponceやrequest*/).Loop())
90
+ fmt.Println(NewLooper(/*ListSomething1やresponce1やrequest1*/).Loop())
90
91
  // 出力結果: [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]
92
+ fmt.Println(NewLooper(/*ListSomething2やresponce2やreques2t*/).Loop())
93
+ // 出力結果: [0 1 2 3 4 5 6 7 8 9 10]
91
94
  ```
92
95
 
93
96
  ### 補足情報(FW/ツールのバージョンなど)

1

マルチポストの明記

2022/12/14 12:28

投稿

ponyo877
ponyo877

スコア17

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,8 @@
1
1
  ### 前提
2
2
  ページ分割されたリスト取得APIの全結果取得をGo言語でクラス化できずに困っており、実装例を示していただきたい
3
+ また、この投稿はマルチポストになります。他の投稿は以下になります。
4
+ - https://stackoverflow.com/questions/74782804
5
+ - https://ja.stackoverflow.com/questions/92728
3
6
 
4
7
  ### 実現したいこと
5
8
  以下のようなrequest/responceオブジェクトを持つページ分割されたリスト取得メソッド(=ListSomething)があったとき、