استفاده از Delegate ها و Generic ها در سی شارپ چه مزایایی دارد ؟
- تاریخ افزودن:
- شنبه ۲۶ ارديبهشت ۱۳۸۸ ساعت ۲۰:۵۱
- آخرین تجدیدنظر:
- جمعه ۱۰ ارديبهشت ۱۳۸۹ ساعت ۲۲:۲۹
- بازدیدها:
- 999
- برگزیدهشده:
-
0
پاسخ
1- Generic ها یک نوع امن را بدون سرریز پیاده سازی های چندگانه فراهم می کنند.
به عنوان مثال ما میتوانیم یک لیست پیوندی از رشته ها بسازیم :
LinkedList(string) linklist = new LinkedList(string);
در اینجا نیازی به ارث بری از یک نوع پایه و Override کردن اعضا نیست و لیست پیوندی برای استفاده سریع آماده است.
2- احتیاجی به نوشتن کد برای تست درست بودن نوع داده نیست زیرا در زمان کامپایل تقویت شده است. همچنین نیاز به تبدیل نوع و احتمال داشتن خطاهای زمان اجرا کاهش یافته است.
3- انواع دسته های Generic به این خاطر که احتیاجی به جعبه کردن ( Box ) داده ها نیست ، معمولا برای ذخیره و دستکاری انواع داده ها بهتر عمل می کنند.
4- Delegate های Generic ، فراخوانی های پشتی ( CallBack ) از نوع امن را بدون نیاز به ساختن چند Delegate فراهم می کنند.
5- همچنین Delegate های Generic می توانند بدون نیاز به تولید یک نوع Delegate در کد هایی که بصورت خودکار تولید میشوند استفاده شوند. این مسئله تعداد سناریوها را افزایش می دهد که شما می توانید از متدهای پویای سبک وزن ( Lightweight ) به جای تولید کلی اسمبلی ها استفاده کنید.
6- Delegate ها از نوع چک شده ( Checked Type ) هستند و در فضاهایی نگهداری میشوند که می توانند توسط مدیر حافظه اصلاح شوند.



