Go LangでWebAPIを作成するために、GolangでDBのデータを取得するmainファイルをそれぞれの責務に分割する
nove-b
December 5, 2023
Go LangでWebAPIを作成するために、GolangでエンドポイントにアクセスしDBからデータを取得するでデータ取得の処理は確認できた。
リファクタリング
次に現状、main.goにすべての記述をしていたが、それぞれ簡単に責務ごとにフォルダを分けることにした。
分け方は、下記の通り。
db フォルダ:
- データベース関連の処理: db フォルダは主にデータベースとのやり取りに関するコードを含みます。
- データベースの初期化: db.go ファイルではデータベースの初期化と接続に関するコードがあります。
- モデルの定義: データベースのテーブルに対応するモデルを定義します(例: db.Model)。
handlers フォルダ:
- HTTP ハンドラとリクエスト処理: handlers フォルダは主に HTTP リクエストを処理し、それに対するレスポンスを生成するコードを含みます。
- ルーティング: リクエストのルーティングやエンドポイントの定義が handlers.go にあります。
- 特定の機能の処理: 例えば、user_handler.go ではユーザー関連の処理が定義されています。
main.go:
- プログラムのエントリーポイントである main.go には、アプリケーションの起動や初期化といった主要な機能
これで分かりやすくなった。
handlers フォルダを詳細に
FetchUsersもついでに分けることにする。
これでそれぞれ管理しやすくなった。
Discussion in the ATmosphere