اکشن (Action) در سی شارپ، راهی برای خواناتر شدن کدها

اکشن (Action) در سی شارپ
تاریخ بروزرسانی : 19 شهریور 1399 | تعداد بازدید : 5140 | زمان خواندن مقاله : 10
سی شارپ،
همانطور که می دانیم زبان سی شارپ یک زبان شی گرایی بسیار قدرتمند است و برای مفاهیم شی گرایی بسیار ارزش و اهمیت قائل می شود. یکی از این ارزش ها اهمیت مفهوم کپسوله سازی است که قبلا در مطلب آموزش Delegate راجب این موضوع اشاراتی کردیم.

میتوان Actionها را اینطور مطرح کرد که Action ها به کمک برنامه نویسانی آمدند که دوست دارند کدهای خواناتر به عبارتی کدهای expressive تر(رسا تر) بنویسند که در آموزش سی شارپ تا حدی زیادی راجب تمیز نوشتن کد ها بحث کرده ایم اما در این مطلب میخواهیم بیشتر به این مورد بپردازیم و نقش Action در برنامه نویسی سی شارپ را برای شما شرح دهیم.

میدانیم که Action ها از زیر ساخت Delegate ها استفاده می کنند و در حقیقت یک Delegate است و بسیار مرتب برای یکسری حالات روتین کارآمد است و نیازی به ایجاد Delegate نیست. مگر زمانیکه قصد داشته باشید سناریویی کاملا متفاوت پیاده سازی کنید (مثل کار باEvent Handler ها و رویداد). در واقع Action ها PreBuilt Delegate (نماینده Delegate) هستند.
 
نکته ی بسیار مهم این است که Actionها مقداری را بر نمی گردانند. به عبارت دیگر یک Action می‌تواند برای متد هایی که دارای مقدار بازگشتی void هستند، مورد استفاده قرار گیرد.

آموزش سی شارپ

مایکروسافت Action ها را در 2 حالت ارائه کرده است :

  1. زمانی که متد/متدها شما اصلا ورودی ندارند.
  2. زمانی که متد/متدها شما دارای آرگومان های ورودی متفاوتی باشد.

حالت دوم بسیار جالب و کاربردی است زیرا این حالت یک Action<TypeSafe> از نوع جنریک است. این نوع از Action دارای 16 Overload است که میتواند ورودی های متد شما باشد !

نحوه استفاده ازAction :

  • میتوان یک دلیگیت Action را با استفاده از کلمه کلیدی new و یا با استفاده از یک متد مقداردهی اولیه کرد.
  • میتوان از متدهای بی نام همراه دلیگیت Action استفاده نمود. 
  • میتوان به همراه دلیگیت Action از عبارتهای لامبدا نیز استفاده نمود.

مزایای استفاده از Action

مزایای استفاده از دلیگیت های Action و به شرح زیر است :

  • تعریف سریع و آسان یک delegate
  • کوتاه کردن کد نویسی

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


کلمات کلیدی :
سی شارپ