
πDependency Injection Principles, Practices, and Patterns (2019)
βοΈΠΠ²ΡΠΎΡ: Mark Seemann, Steven van Deursen
πΠ‘ΡΡΠ°Π½ΠΈΡ: 562
ΠΠ½ΠΈΠ³Π° ΡΡΠΈΡ Π²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ DI Π΄Π»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΠΆΠ΅ΡΡΠΊΠΎ Π·Π°Π΄Π°Π½Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡ Π½Π°ΡΠ½Π΅ΡΠ΅ Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ DI ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ Π½Π΅Π³ΠΎ Π²ΡΠΈΠ³ΡΠ°ΡΡ. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΏΡΠΎΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ C# ΠΈ .NET ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ DI Π² Π²Π°ΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Π‘ΠΊΠ°ΡΠ°ΡΡ ΠΊΠ½ΠΈΠ³Ρ
βοΈΠΠ²ΡΠΎΡ: Mark Seemann, Steven van Deursen
πΠ‘ΡΡΠ°Π½ΠΈΡ: 562
ΠΠ½ΠΈΠ³Π° ΡΡΠΈΡ Π²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ DI Π΄Π»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΠΆΠ΅ΡΡΠΊΠΎ Π·Π°Π΄Π°Π½Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡ Π½Π°ΡΠ½Π΅ΡΠ΅ Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ DI ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ Π½Π΅Π³ΠΎ Π²ΡΠΈΠ³ΡΠ°ΡΡ. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΏΡΠΎΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ C# ΠΈ .NET ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ DI Π² Π²Π°ΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Π‘ΠΊΠ°ΡΠ°ΡΡ ΠΊΠ½ΠΈΠ³Ρ