<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های m_89970261</title><link>https://virgool.ir/feed/@m_89970261</link><description></description><language>fa</language><pubDate>2026-11-12 06:24:40</pubDate><image><url>https://virgool.ir/images/default-avatar.jpg</url><title>m_89970261</title><link>https://virgool.ir/@m_89970261</link></image><item><title>تزریق وابستگی</title><link>https://virgool.ir/@m_89970261/تزریق-وابستگی-vhn7butcefbb</link><description>تزریق وابستگی یا ( Dependency Injection) فرآیندی می باشد که در آن وابستگی های ما به یک کلاس با استفاده از یک رابط کاربری یا همان  (Interface) حذف می شود. نمیشه گفت که  تزریق وابستگی یک واژه یا یک Concept بد است و حتی نمیشه گفت یک Concept خوب است اگر به درستی استفاده شود یعنی به درستی درک شده باشد و پیاده سازی شده باشد یک مفهوم خوب و در صورتی که بد استفاده شده باشد یک مفهوم فوق العاده بد خواهد داشت.چرا ما از تزریق وابستگی استفاده می کنیم؟ایده اصلی Dependency Injection این می باشد که اتصالات و وابستگی را بصورت جدا از هم ایجاد کند، بصورتی که کلاس مادر یا شی ایجاد شده به راحتی قابل آزمایش و اجرا باشد.اصولا مشکل زمانی پیش خواهد آمد که ما یک کلاس را ایجاد کرده باشیم و در آینده بخوایم در یک شی تغییراتی ایجاد کنیم، این تغییرات بسیار دشوار می باشد چرا که اگر از تزریق وابستگی استفاده نکرده باشیم باید تمام نونه های آن شی را تغییر دهیم.مثال در مورد استفاده از تزریق وابستگی ها:شما قصد دارید در سیستم خود یک بخش برای ارسال ایمیل پس از ثبت نظر توسط کاربر ایجاد نمایید. شما کلاسی ایجاد خواهید کرد که با استفاده از کلاس پیش فرض ایمیل این کار را برای شما انجام دهد. حالا یک سال دیگر مدیرپروژه شما می گوید که می خواهد به سیستم نظرات خود قابلیت ارسال پیامک را نیز اضاف کند. خوب حالا شما چه کار انجام خواهید داد؟یک کلاس دیگر مجددا برای ارسال پیامک ایجاد خواهید کرد که از کلاس پیش فرض  ارسال پیامک شما استفاده کند؟خوب چرا اینکار؟همانطور که می دانیم هم ایمیل و هم پیامک یک گیرنده و یک متن دارند البته ممکن است در برخی موارد مانند سرویس دهنده متفاوت باشند اما نتیجه نهایی هر دو ارسال پیغامی به کاربر مورد نظر می باشدپس در اینجا می توانیم با استفاده از Dependency Injection و یک رابط کاربری یا همان Interface کلاس مادر خود را طوری ایجاد خواهیم کرد، که به راحتی استفاده و بتوان حتی اگر روزی نیاز به استفاده از روش های دیگری همچون ارسال پیام صوتی و تصویری و.. بود هم از همین کلاس استفاده نماییمبعد از این توضیحات حالا میریم سراغ آموزش نحوه استفاده از تزریق وابستگی در محیط سی شارپ که به طور دقیق در کلیپ بارگذاری شده در آپارات توضیح دادم </description><category>m_89970261</category><author>m_89970261</author><pubDate>Mon, 24 May 2021 17:53:56 +0430</pubDate></item></channel></rss>