まえがき

Goは言語もコミュニティーも歴史が浅く、アジャイル開発のように迅速にソフトウェアを書くには適していないという迷信が広まっています。筆者が本書の執筆を決意したのは、この迷信を打ち破るためです。筆者の友人には、既存のGemやライブラリをマッシュアップして完全なRuby on Railsアプリケーションを週末休みだけで作ってしまうような人もいます。Railsのプラットフォームは、迅速な開発を可能にしてくれるものとして知られています。同じことが、Goと成長を続けるオープンソースのパッケージを使っても可能です。Railsにはできないようなやり方で、すぐに高いパフォーマンスを発揮し大規模アクセスにも耐えているソフトウェアの実例を示そうと思います。もちろん、言語自体だけでスケーラビリティを実現できるというわけではありません。しかしGoに組み込みの並行処理関連の機能を使えば、ごく基本的なハードウェアでもかなりの性能を発揮させることができます。実運用の際にも、当初から高い能力を示してくれるはずです。

本書では、それぞれ性格の異なる5つのプロジェクトを紹介します。これらはいずれも、本気でスタートアップ企業を立ち上げようとしている人々にとっての基礎となることをめざしています。遅延の少ないチャットアプリケーション、ドメイン名を提案するツール、Google Places APIを使ったナイトライフ向けツールなど、取り上げるトピックはさまざまです。どの章でも、Goを使ったサービスのほとんどで取り組まれなければならない各種の課題に挑戦しています。本書で紹介するコードは、唯一の解決策というわけではありません。とるべきアプローチについては、読者自身で判断することをおすすめします。コードよりもその背後にあるコンセプトのほうが重要なのですが、コードの各所で使われているヒントやコツを身につけることにも意義はあります。 ...

Get Go言語によるWebアプリケーション開発 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.