در مورد Event و Delegate در #C

  1.  در زبان C# دو مفهوم Event و Delegate بسیار به یکدیگر وابسته و با یکدیگر در تعامل می باشند. 
  2.  به عنوان مثال مواجهه با رخدادها و انجام عمل مورد نظر در هنگام اتفاق افتادن یک رخداد، نیاز به Event Handler دارد تا در زمان بروز رخداد بتوان به آن مراجعه کرد. Event Hander ها در سی شارپ معمولا با Delegate ساخته می شوند. 
  3.  از Delegate می توان به عنوان یک Callback یاد نمود. به این معنا که یک کلاس می تواند به کلاسی دیگر بگوید که این عمل را انجام بده و هر وقت انجام دادی مرا مطلع کن.  
  4.  با استفاده از Delegate می توان متدهایی تعریف نمود که تنها در زمان اجرا قابل دسترسی باشند. 
  5.  Delegate ها Refrence Type هستند. 
  6.  با استفاده از Delegate ها می توان Refrence به یک متد را نگهداری کرد. در زبان C این مفهوم با اشاره گر ها بیان می شود. 
  7. Delegate نوعی است شبیه متد و مانند متد رفتار می کند. 
  8.  ممکن است به شرایطی برخورد کرده باشید می خواهید عمل خاصی انجام دهید اما اما نمی دانید که چه شی یا عمل خاصی را به آن متصل کنید.به عنوان مثال در برنامه ی شما کلیدی وجود دارد که پس از فشردن آن توسط کاربر باید متدی فراخوانی شود تا عمل مورد نظر شما بر روی ان انجام گیرد. به جای اتصال این کلید به شی یا متد خاص، می توان آن را به یک Delegate مرتبط نمود و سپس آن Delegate را به متد یا شی خاص در هنگام اجرای برنامه متصل نمود. 
  9.  تعریف Delegate همانند تعریف متد است با این تفاوت که در ابتدای آن کلمه ی کلیدی Delegate قرار می گیرد و در انتهای آن ; قرار می گیرد و پیاده سازی بدنه نیز ندارد.
نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد