Go言語で作るWebアプリのテンプレート

こんにちは。KOUKIです。

とある企業で、Go言語を使ったWebアプリケーションの開発に携わっています。

Goでは、Webアプリケーションを簡単に作れる仕組みを提供していますが、基本の骨組みはテンプレート化できるかと思い、この記事を作りました。

ローカルでWebサーバーを立ち上げ、ブラウザから「http://localhost:8080」へアクセスすると簡単なページを表示できます。

Staticファイルの配信方法

本記事にプラスして、Staticファイル配信の方法を以下の記事にまとめました。

簡易Webアプリのテンプレート

ワークスペース

go modでGo Modules(パッケージ管理)を導入しているところがミソです。これで、プログラム実行時に必要なパッケージを自動でインストールできます

html

htmlフォルダは、Webページのテンプレートファイル入れます。

home.jet

home.jetは、Webページのテンプレートファイルです。拡張子の「.jet」はCloudyKit/jet(テンプレートエンジン)で扱うためのものです。
※テンプレートエンジンはいろいろありますが、ここでは上記のものを使っています

internal

internalフォルダは、内部のみで使用するソースコードを格納するための場所です。

handler

handlerフォルダには、ハンドラ処理を実装したファイルを入れます。

handlers.go

cmd

cmdには、プログラムを実行するソースコードを格納します。

web

今回はWebサーバーの作成であるため、webフォルダを作成し、その中にmainパッケージを格納します。

routes.go

ここには、エントリポイントを実装します。

main.go

ここで、Webサーバー(アプリ)を起動します。

Webアプリ起動

「http://localhost:8080」にアクセスしてください。

OKですね。

おわりに

今回、Webアプリのテンプレートとしてファイル構成とコードサンプルを紹介しましたが、もちろんこれが絶対的な正解というわけではありません。

プロジェクトの状況によって、カスタマイズしてくださいね^^

それでは、また!

Go記事まとめ

コメントを残す