January 2016
Beginner to intermediate
280 pages
4h 10m
Japanese
ハイパフォーマンスで並行処理も得意とするGoは、サーバー側のアプリケーションやツールの作成に適しています。そのようなソフトウェアは、Webでまさに必要とされているものです。今日では、Webに対応していないガジェットを見つけるのは困難なほどです。また、Webを利用すれば1つのアプリケーションでほぼすべてのプラットフォームやデバイスに対応させることも可能です。
本書で紹介する最初のプロジェクトでは、Webベースのチャットアプリケーションを作成します。ここでは、複数のユーザーがブラウザ上でリアルタイムに会話ができます。一般的なGoアプリケーションやGoの標準ライブラリはパッケージという単位で構成されており、各パッケージはそれぞれのフォルダーに配置されます。まずはnet/httpパッケージを使ったシンプルなWebサーバーを作成します。このサーバーがHTMLファイルを提供します。そして、WebSocketを利用してメッセージをやり取りできるようにします。
C#やJavaあるいはNode.jsなどでは、すべてのクライアントが同期された状態を保つためには複雑なスレッドのコードや巧妙なロックの使いこなしが求められます。一方Goでは、チャネルなどの並行処理向けのしくみが言語に組み込まれており、実装が非常に容易です。
この章では次のような事柄について学びます。
net/httpパッケージを使い、HTTPリクエストに応答します。http.Handler型のインタフェースに適合させます。Read now
Unlock full access