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のソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス

21章依存関係管理

Titus Winters 著

Lisa Carey 編

 依存関係管理、言い換えればライブラリーやパッケージや管理外の依存関係が形成するネットワークの管理は、ソフトウェアエンジニアリングにおける、理解が最も進んでおらず最も難解な問題に属する。依存関係管理が対象とする問題は以下のようなものだ。外部の依存関係の各バージョン間での更新はどうやって行うか。バージョンといえば、各バージョンはどう記述するのか。依存関係内ではどんな類型の変更が許容または期待されるのか。他の組織が生産したコードに依存するのが賢明な場合をどうやって決めるのか。

 比較として、依存関係管理に最も近接した関連トピックは、ソースコントロールである。双方の領域とも、ソースコードを扱う作業をどのように行うかを記述するものだ。ソースコントロールが取り扱うのは最も簡単な部分で、何かをチェックインするのはどこか、何かをビルドに入れるにはどうすればよいか、等だ。トランクベース開発の価値さえ受け入れてしまえば、組織にとっての日常的なソースコントロールの問題の大半は「新しいものがあるんだけどどのディレクトリーに追加すればいいかな」程度のかなり平凡なものとなる。

 依存関係管理は、時間とスケールの双方に、さらなる複雑性を加える。トランクベースのソースコントロールの問題では、コード変更を行う際にはテストを実行し既存コードを破綻させないようにする必要があるという要件が、それなりに明確である。その要件は、共有コードベース内で作業しており、ある物がどのように利用されているかについての可視性があり、ビルドの発動とテストの実行ができるという観念に基づいている。依存関係管理が対象とするのは、自分の組織の外にある、アクセスも可視性も十分にはない場所でコード変更が行われている場合に生ずる問題群である。上流の依存関係が自分のプライベートなコードと整合性が取れないために、ビルドを破綻させてテストを失敗させる可能性がある。そんな場合をどう管理すればよいだろうか。外部の依存関係は取り入れるべきではないのだろうか。外部の依存関係に向かって各リリース間での一貫性を増すよう要請するべきだろうか。新バージョンへのアップデートはいつ行うか。 ...

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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

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

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

Betsy Beyer, Niall Richard Murphy, David K. Rensin, Kent Kawahara, Stephen Thorne, 澤田 武男, 関根 達夫, 細川 一茂, 矢吹 大輔, 玉川 竜司
初めてのSQL 第3版

初めてのSQL 第3版

Alan Beaulieu, 株式会社クイープ
プログラミングRust

プログラミングRust

Jim Blandy, Jason Orendorff, 中田 秀基
仕事ではじめる機械学習 第2版

仕事ではじめる機械学習 第2版

有賀 康顕, 中山 心太, 西林 孝

Publisher Resources

ISBN: 9784873119656Other