مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

siamak8982

عضویت از 1392/05/14

فرق DIP و DI

  • چهارشنبه 24 مهر 1398
  • 13:10
تشکر میکنم

سلام دوستان

فرق DI و DIP و IOC چیه؟

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • پنجشنبه 25 مهر 1398
  • 12:24

سلام خدا و ما بر شما دوستان

1- Dependency Inversion Principle  یا DIP  :

یعنی آنکه شما همواره باید قیود خود را روی اینترفیس پیاده کنید و حق پیاده سازی آن را در سطوح پایین تر ارجاع دهید. بعبارت دیگر وقتی کلاسی از شما به کلاسی دیگر وابستگی داشته باشد خیلی بد است چون اینترفیس آن قابل پیاد سازی مجزا نمی باشد.

2- DI  یا Dependency Injection:

به این معنی که موجودات شما باید مستقل از یکدیگر باشند و در هنگام پیاده سازیباید وابستگی بین آنها تزریق شود. یعنی در سطح DIP  شما باید انتزاع قطعی را در نظر بگیری بدون هیچ وابستگی و در سطح DI این وابستگی را تزریق کنی

3- IoC یا Inversion of Control:

اینجا معمولا تفاوت بین کتابخانه و فریم ورک تعریف می شود. یعنی آنچه که باعث می شود DI  پیاده سازی شود. مثلا نینجکت!! یک فریم ورک است که وظیقه اش اقدمات DI  را انجام می دهد اما خودش یک IoC  است!

ضمیمه را ببین

https://stackoverflow.com/questions/6766056/dip-vs-di-vs-ioc

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)