LearnByLearn📖: post #196 — TG.ME

توی این پست میخوایم بررسی کنیم که Dependency Injection چی هست و توی فریمورک هایی مثل Angular یا Nest چطور داره کار میکنه؟؟؟🧐


اول ببینیم DI یا همون تزریق وابستگی چیه ؟
خیلی عامیانه و راحت بخوام بگم یعنی: به‌جای اینکه هر چیزی رو خودت بسازی، یکی دیگه بهت بدش.

یه مثال بزنیم:
تو می‌خوای چای بخوری
خودت میری آب رو می‌جوشونی، چای درست می‌کنی
یکی چای آماده رو میاره میده دستت

حالا اون "چایی آماده" میشه dependency، که ما بهش نیاز داریم
و اون "کسی که چایی رو میاره" میشه injection ما.

به زبون برنامه نویسا بخواییم بگیمش اینطوری میشه که:
فرض کن تو یک کلاس user داری و این user نیاز به ایمیل داره

یه راه اینه قیمه هارو بریزی تو ماستا یعنی توی همون کلاس user بیایی ایمیل رو بسازی و همه کاراشو کنی و استفاده کنی. که خب قطعا کار درست و جالبی نیست

یک راه دیگه این که یک کلاس Email بسازیم و بعد به صورت یک وابستگی به کلاس user تزریقش کنیم.
اینطوری کد تروتمیز تر و قابل تست تره و خب single responsibility هم رعایت میشه

اینطوری هرکس و هرجا به این Email نیاز داشت، اون رو بهش inject کنی


چون Nest.js از روی Angular الگو برداری کرده به هم خیلی شبیه هستن. با این تفاسیر توی پست بعدی بریم ببینیم این DI تو انگولار چطور کار میکنه ؟

مقاله اختصاصی توی ویرگول بنویسیم ✍️
توی همین تلگرام به صورت پست بنویسم 🆒

با ریکشن ها تو کانال نظرتونو بگید که با کدوم بیشتر حال میکنید، مخلصیم ❤️

@LearnByLearn
#dependency_injection
🆒7❤2✍2👍2
January 7, 2026 1.9K 8