Skip to Content
Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス
book

Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス

by Titus Winters, Tom Manshreck, Hyrum Wright, 竹辺 靖昭, 久富木 隆一
November 2021
Intermediate to advanced
684 pages
10h 37m
Japanese
O'Reilly Japan, Inc.
Content preview from Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス

18章ビルドシステムとビルド哲学

Erik Kuefler 著

Lisa Carey 編

 Googleのエンジニアたちに、Googleで働くことの何が(無料の食べ物と素晴らしい製品の他に)最も好きかと尋ねたら、びっくりするような答えを聞くかもしれない。なんと、エンジニアたちはビルドシステムを愛しているのだ†1。Googleは創業以来、社内のエンジニアたちが素早く確実にコードを開発できる状態を担保するというゴールを抱いて、途方もない量のエンジニアリングに関する労力を、自社ビルドシステムの一からの開発へと注いできた。Googleでの取り組みは大きな成功を収めたので、このビルドシステムの主要な構成要素であるBlazeに相当するものが、会社を去った元グーグラーたちによって幾度となく再実装されてきている†2。2015年に、GoogleはついにBazel(https://bazel.build/)という名のBlazeの実装をオープンソース化した。

†1 社内の調査では、83%のグーグラーがビルドシステムに満足していることを報告しており、19個の調査対象のうち、4番目に満足度の高いツールとなっている。ツール全体の平均満足度は69%だった。

†2 https://buck.build/https://www.pantsbuild.org/ を参照してほしい。

18.1 ビルドシステムの目的

 全てのビルドシステムの根底には単純明快な目的がある。それは、エンジニアたちが書いたソースコードを、機械が読める実行可能バイナリへと変換するというものだ。優れたビルドシステムというものは、一般に、2つの重要な属性へ向けた最適化に努めるだろう。

速い

開発者はコマンドを1つだけ入力すればビルドを実行できるべきであり、生成されるバイナリを多くの場合たった数秒程度以内に取得できるべきである。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

サイトリライアビリティワークブック ―SREの実践方法

サイトリライアビリティワークブック ―SREの実践方法

Betsy Beyer, Niall Richard Murphy, David K. Rensin, Kent Kawahara, Stephen Thorne, 澤田 武男, 関根 達夫, 細川 一茂, 矢吹 大輔, 玉川 竜司
プログラミングRust

プログラミングRust

Jim Blandy, Jason Orendorff, 中田 秀基

Publisher Resources

ISBN: 9784873119656Other