doc.dev1x.org

継続的デリバリーのソフトウェア工学 もっと早く、もっと良いソフトウェアを作るための秘訣 (David Farley)

書籍情報

書籍目次

第1章 イントロダクション

ソフトウェア工学とは何か

学びのエキスパートに必要な5つのテクニック

複雑さ管理のエキスパートに必要な5つの

5つの要素

第2章 工学とは何か

ソフトウェア開発は製造業ではない

誤解 → 工学とはアウトプット(コードや設計)のことである

第9章 モジュラー性

モジュラー性の定義

ソフトウェア開発の本質

モジュラー性とテスト可能性

サービスとモジュラー性

第11章 関心の分離

関心の分離の定義

関心の分離の効果

依存性の注入

第12章 情報隠蔽と抽象化

情報隠蔽と抽象化とは

抽象化か情報隠蔽か

大きな泥団子

マインドセット

チームのソフトウェアの半分の寿命

オーバーエンジニアリングの懸念

オーバーエンジニアリングとの付き合い方

フューチャープルーフ

抽象化

テスト

漏れのある抽象化

漏れのある抽象化、漏れのタイプ

イベントストーミング

付随的な複雑さの抽象化

サードパーティのシステムやコードの分離

抽象化はソフトウェアの核心

第13章 カップリングの管理

カップリングの定義

カップリングにおける留意事項

密結合と疎結合

スケールアップ

マイクロサービス

コードの文字数について

カップリングのナイガードモデル

DRY原則の問題点

DRYのメリット/デメリット

マイクロサービス間で同じコードを共有しない