The Go Blog
Goに関する最近の2つの記事
はじめに
今日のブログ記事では、Goに関する最近の2つの記事を取り上げたいと思います。
GoogleにおけるGo
昨年10月、Rob Pikeはツーソンで開催されたACM SPLASH カンファレンスで基調講演を行いました。GoogleにおけるGoと題されたこの講演は、Goの背後にある動機について包括的に議論したものでした。Robは後に講演内容を拡張し、GoogleにおけるGo:ソフトウェアエンジニアリングに役立つ言語設計というエッセイを執筆しました。以下はその要約です。
The Go programming language was conceived in late 2007 as an
answer to some of the problems we were seeing developing
software infrastructure at Google. The computing landscape
today is almost unrelated to the environment in which the
languages being used, mostly C++, Java, and Python, had been
created. The problems introduced by multicore processors,
networked systems, massive computation clusters, and the web
programming model were being worked around rather than
addressed head-on. Moreover, the scale has changed: today's
server programs comprise tens of millions of lines of code,
are worked on by hundreds or even thousands of programmers,
and are updated literally every day. To make matters worse,
build times, even on large compilation clusters, have
stretched to many minutes, even hours.
Go was designed and developed to make working in this
environment more productive. Besides its better-known
aspects such as built-in concurrency and garbage collection,
Go's design considerations include rigorous dependency
management, the adaptability of software architecture as
systems grow, and robustness across the boundaries between
components.
この記事では、軽量で快適に感じられる効率的なコンパイル型プログラミング言語を構築する際に、これらの問題にどのように対処したかを説明しています。例と説明は、Googleで直面した実際の問題から引用されます。
Goの設計上の決定について疑問に思っている方は、この記事で答えが見つかるかもしれません。Goの初心者と経験者の両方にとって、推奨される読み物です。
Google Developers AcademyにおけるGo
Google I/O 2012で、Google DevelopersチームはGoogle Developers Academyを立ち上げました。これは、Googleテクノロジーに関するトレーニング資料を提供するプログラムです。Goはこれらのテクノロジーの1つであり、Goを前面に押し出した最初のGDA記事を発表できることを嬉しく思います。
Go、App Engine、Google+ API入門は、GoでWebアプリケーションを作成するための入門書です。App Engineアプリケーションを構築してデプロイし、Google APIs Go Clientを使用してGoogle+ APIを呼び出す方法を示しています。これは、Googleの開発者エコシステムを使い始めることに熱心なGoプログラマーにとって最適なエントリーポイントです。
次の記事:Go 1への道
前の記事:Goミートアップに参加しよう
ブログインデックス