مقایسه دو روش SI و CI در فریمورک اسپرینگ

به نام خدای مهربان

همانطور که در مقاله های قبلی اشاره شد، فریمورک اسپرینگ از دو روش برای تزریق وابستگی استفاده می کند که روش اول در مقاله تزریق وابستگی از طریق سازنده (CI) و روش دوم در مقاله تزریق وابستگی با استفاده از متود setter (SI) توضیح داده شد.

در اینجا قصد داریم تفاوت های این دو روش را بیان کنیم.


بین دو روش تزریق سازنده و تزریق setter تفاوت های کلیدی بسیاری وجود دارد.

  1. وابستگی جزئی (Partial dependency): وابستگی جزئی را از طریق setter می توان تزریق نمود اما با استفاده از سازنده این امر امکان پذیر نیست. تصور کنید یک کلاس دارای 3 خصیصه، 3 سازنده arg و متود setter باشد. در این حالت شما اگر بخواهید اطلاعات یک خصیصه را پاس دهید، این کار از طریق متود setter امکان پذیر است.

  2. برتری: تزریق setter بر تزریق سازنده غلبه می کند. اگر ما از هر دو روش استفاده کنیم، مدیر IOC از تزریق setter استفاده خواهد کرد.
  3. تغییرات: با استفاده از تزریق setter می توان براحتی مقدار را تغییر داد. برای این کار لازم نیست همیشه یک نمونه جدید از bean ایجاد شود در حالیکه در سازنده همواره این اتفاق می افتد. بنابراین تزریق setter نسبت به تزریق سازنده انعطاف پذیرتر است.

این مطلب مورد پسند شما بود؟

با کلیک روی ستاره‌های زیر به آن امتیاز دهید.

میانگین امتیاز: / 5. تعداد امتیازها:

تاکنون امتیازی برای این مطلب ثبت نشده است، می‌توانید اولین نفر باشید!

همچنین بخوانید:  راه اندازی خودکار (Autowiring) در فریم ورک اسپرینگ

درباره‌ی فروغ

مدیرعامل شرکت و مدرس دانشگاه

همچنین ببینید

تزریق وابستگی در اسپرینگ

تزریق سازنده با Non-String Collection

به نام خدا در ادامه مقاله پیشین در مورد تزریق سازنده با collection در فریمورک …

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *