10.2 ウェブプログラミングの基本

この節ではGoの net/http パッケージが動作する仕組みを紹介した後、ウェブアプリケーションを開発する上でのTipsを紹介していきます。サードパーティーの便利なウェブアプリケーションフレームはたくさんありますが、まずはGoの標準ライブラリ net/http パッケージで何ができるかを知っておくと良いでしょう。GinやEchoなど著名なフレームワークも net/http をベースにしたラッパーに近い存在であるため、 net/http で学んだ知識をすぐ活かすことができます。

note

2021年のJetBrainsの調査によると、開発者が定期的に使用しているウェブフレームワークはGinやEchoやBeegoを抑えて、何も使っていない、という回答が一番多くありました。

https://www.jetbrains.com/ja-jp/lp/devecosystem-2021/go/

10.2.1 HTTPサーバーを実装する

GoのHTTPサーバーを知るには net/http パッケージの主要な型、インタフェースを押さえると見通しが良くなります。大きく以下の3つです。

  • Handler インタフェース

  • HandlerFunc

  • ServeMux

Handler インタフェースは ServeHTTP メソッドを定義しています。リクエストが呼び出されたときに動作するハンドラーです。Handler インタフェースを満たしていれば、HTTPサーバーのハンドラーとしてふるまえます。 ...