+2 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

آیا تعریف dependency ها در Spring در قالب XML مزیتی نسبت به روش Annotation دارد؟ و یا بلعکس؟ یا اینکه تمام امکانات روش XML در روش Annotation هم وجود دارد؟

4 پاسخ

+4 امتیاز
قبل توسط (7.2هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

به نظر من مزیت استفاده از Annotation راحتی و سهولت در استفاده است ، در حالی که مزیت XML این است که تمامی تغییرات را به صورت مستقل می توان مدیریت نمود و همچنین پس از دپلوی نیز امکان تغییر دادن dependency به راحتی ممکن است.

+3 امتیاز
قبل توسط (1.1هزار امتیاز)

من خودم به استفاده از XML برای تعریف dependency ها در Spring اعتقاد دارم و در زیر یکسری از برتری های این روش را آوردم:

  • تنظیمات شما متمرکز است و در میان کلاس های مختلف نرم افزار پخش نمی باشد.
  • می توانید فایل های خود را در چند فایل پخش کنید، Spring با استفاده از تگ <import> این امکان را به شما می دهد.
  • فایل های XML کامپایل نمی شود و پس از packaging و deploy هم قابلیت تغییر دارند.

اما یکی از سختی های استفاده از  XML این است که اکثر IDE ها از static چک (چک صحت dependency ها قبل از اجرا) آنها پشتیبانی نمی کنند و باید تا زمان اجرا منتظر بمانید.

+2 امتیاز
قبل توسط (1.5هزار امتیاز)
ویرایش شده قبل توسط
بدون شک XML هنوز کاربرد خودش را دارد و هنوز کنار نرفته و تنها مزیتی که  @ دارد سرعت در برنامه سازی و کاهش خطای برنامه نویس است.

به نظر من @ چیزی شبیه به hardcode کردن است.

ولی میتوان از هر دو روش XML  و @ در یک پروژه استفاده کرد.

برای ماژولهای که پیچیدگی، وابستگی و نیاز به تغییرات در زمان اجرا دارند از XML استفاده کنید و

برای ماژولهایی کوچکتر از @ استفاده کنید و از سرعت برنامه سازی لذت ببرید
0 امتیاز
قبل توسط (40 امتیاز)
با سلام معمولا یک سری تنظیمات کلی در قالب فایل xml  انجام می شه...که اگر احیانا خواسته باشین می تونین توی کد و با استفاده از Annotation ها تنظیمات توی xml رو override کنید.هر چند هر کدوم به تنهایی هم قابل استفاده هستن.

سوالات مشابه

0 امتیاز
1 پاسخ 1.0هزار بازدید
+1 امتیاز
1 پاسخ 476 بازدید
0 امتیاز
1 پاسخ 350 بازدید
0 امتیاز
1 پاسخ 323 بازدید
+1 امتیاز
2 پاسخ 918 بازدید
0 امتیاز
1 پاسخ 1.1هزار بازدید
0 امتیاز
1 پاسخ 1.1هزار بازدید
+1 امتیاز
1 پاسخ 624 بازدید
+1 امتیاز
1 پاسخ 1.2هزار بازدید
...