google/wireを使った Goらしいアーキテクチャへの取り組み / gocon-fukuoka-2019-summer

google/wireを使った Goらしいアーキテクチャへの取り組み / gocon-fukuoka-2019-summer

2019/07/13 に行われたGo Conference '19 Summer in Fukuoka で発表した資料です。

https://fukuoka.gocon.jp/ja/speakers/budougumi0617/

Eb6be531bcfaa99714d8d3b48665a5a9?s=128

Yoichiro Shimizu

July 13, 2019
Tweet

Transcript

  1. 4.

    4

  2. 20.

    Simplicity - 徹底的な簡潔性 • GoのMission ◦ Creating software at scale

    ◦ Running software at scale • システムは成長する際に、デザインの簡潔性を通してのみ、 安定し、安全であり、首尾一貫したままでいられる 20 Go's New Brand の Mission, プログラミング言語 Go まえがき より
  3. 33.

    • package間のインターフェイスにwire wayができる ◦ wireが使いやすい構造 == 疎な構造 • パッケージ間の依存関係を機械的に表現できる ◦

    wire show • あまり独自要素がない ◦ ロジック部分に癒着しないので最悪すぐ辞められる 使っていてよいところ 33
  4. 34.

    • 単純にDIコードを書かなくて済んでいる ◦ 自動生成前 36行 / 自動生成後 91行 ▪ 4

    API, RDS, KMS, Redis etc... • wireコマンド自体も使いやすい ◦ エラーメッセージなどが親切 使っていてよいところ 34