Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~

【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~

【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人

長年動いてきた倉庫システムに、「箱サイズ」という言葉がありました。
現場はその数字で段ボールを組み、営業はその数字で運賃を決める。

ある日、営業の依頼でプログラムを書き換えました。
翌日、梱包作業場から電話が鳴ります。
「60の箱を組んだら、商品が入らないんですが」

障害対応の会議室で、誰かが言いました。
「営業からの変更で、なぜ梱包作業が止まるのか」

その『なぜ』につく名前が、単一責任の原則(SRP)です。
SOLID五原則の筆頭。けれど「一つのクラスは一つのことだけ」という覚え方は、この現場では通用しませんでした。

持ち帰りは一問だけ。
「その車の運転席に、何人座っていますか?」

コードは出てきません。
クリーンアーキテクチャ本を読んでいなくても大丈夫です。既読の方には、おさらいとして。

SOLIDを原則からではなく、事例から読み直す中級シリーズ(全6回)の第1回です。

---紹介したブログ記事

渡辺幸三「業務システムとマイクロサービス(1)」設計者の発言、2020年
`https://dbconcept.hatenablog.com/entry/2020/11/05/074400`

---
※本編にて、「ドメイン」とは、「駆動」とは、を解説しています。中級編の前にどうぞ

【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
https://speakerdeck.com/panda728/yasasikujie-shuo-she-ji-bian-number-0

ーーー
【やさしく解説 設計編・中級 】目次
#1 一つの車に、運転手は一人 ~ ある倉庫システムの事例から ~
 キーワード:`SOLID` `単一責任の原則(SRP)` `アクター`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-1

#2 使わないボタンだらけのリモコン ~ となりの変更で、うちのビルドが赤くなる話 ~
 キーワード:`SOLID` `インターフェース分離の原則(ISP)`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-2

#3 【やさしく解説 設計編・中級 #3】形はあっていたのに ~ 形に書けない約束の話 ~
 キーワード:`SOLID` `リスコフの置換原則(LSP)` `事前条件、事後条件、不変条件`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-3

#4 ルールの寿命と、システムの年輪 ~ 月曜の朝の、一通の通知から ~
 キーワード:`SOLID` `依存性逆転の原則(DIP)` `安定依存`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-4

#5 なぜ「足すだけ」が、「足すだけ」で済まないのか~ ボタンひとつの依頼から ~
 キーワード:`SOLID` `開放閉鎖の原則(OCP)`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-5

#6 良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
 キーワード:`SOLID` `クリーンアーキテクチャ`
https://speakerdeck.com/panda728/yasasiku-sekkei-2-number-6

※ 7/17 目次およびスライド間のリンクを調整

Avatar for HideyukiKitao

HideyukiKitao PRO

July 13, 2026

More Decks by HideyukiKitao

Other Decks in Programming

Transcript

  1. 変更を求めてくる人が、二人いた 誰が 「箱サイズ」の意味 使い道 現場 段ボールの大きさ 箱を組み立てる 営業 運賃の区分 請求を計算する

    依頼の「60にして」と、電話の「寸法がおかしい」 。  これは、同じ言葉を、別々の意味で話しています。 二つの意味が 同じ数字でなくなったとき、 障害になります。 解 剖 9