0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DI(Dependency Injection)を依存性注入と訳してはいけない。

Last updated at Posted at 2025-04-30

Dependency Injection(以下、DI)とは、「クラスやモジュールが必要とする外部リソース(オブジェクトやサービス)を、自ら生成せずに外部から受け取る設計パターン」です。

DIは、日本語では「依存性の注入」「依存性注入」と訳されています。

ところで、日本語で依存性とはどういう意味でしょうか。

・依存(いそん)
他の人や物に頼ること、または論理的に他の要素によって規定される関係を指します。
例:「あるサービスの動作はネットワークに依存する」→ネットワークがなければ動作しないことを意味します

・性(せい)
名詞を作る接尾語のひとつで、「…の性質」「…の傾向」を表します。
例:「可能性」「危険性」「可読性」などの語で使われます

つまり依存性とは、「ある対象が他の対象に頼る性質や傾向」のこと。例えば、化学反応の「濃度依存性」は「濃度によって反応速度などが変化する性質」を指します

DIでは、あるクラスやモジュールが外部から受け取るのは、明確なリソース(オブジェクトやサービス)です。依存性という意味にある性質や傾向ではありませんし、そもそも性質というのは注入される側が持っていて、注入される内容によって何かが変化するということです。

これらを考えると日本語の意味としての依存性は、DIにおけるdependencyの概念とはまったく異なるものです。

適切な語訳としては「依存関係」です。

実際DIは、「依存関係を注入する」と説明されることが多々あります。

誤った概念を持つ用語を思考停止で使い続けるのはやめ、以後、DI=依存関係の注入です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?