اکشن (Action) در سی شارپ
1399-06-19

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

موارد استفاده ی Action در سی شارپ

همانطور که می دانیم زبان سی شارپ یک زبان شی گرایی بسیار قدرتمند است و برای مفاهیم شی گرایی بسیار ارزش و اهمیت قائل می شود. یکی از این ارزش ها اهمیت مفهوم کپسوله سازی است که قبلا در مطلب آموزش 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
  • کوتاه کردن کد نویسی

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

مقالات مرتبط

pug (پاگ) چیست و از آن چه میدانید؟

pug (پاگ) چیست
مرضیه فتاحی
10

حتما اسم پاگ را شنیده اید اما در دنیای برنامه نویسی چه میکند؟ با ما همراه شوید تا هر آنچه که درباره pug چیست را میخواهید، برایتان ارائه دهیم. پیشنهاد میکنم این مطلب را از دست ندهید.

مطالعه مقاله

چگونه یک طراح وب موفق شوم؟

روش هایی که شما را طراح وب حرفه ای می کند!
فاطمه گلشنی پایدار
10

در این مطلب یاد خواهید گرفت که راه و رسم طراح وب حرفه ای چگونه می باشد.

مطالعه مقاله

سیستم مدیریت پایگاه داده یا DBMS چیست

انواع سیستم های مدیریت پایگاه داده
زهرا چگینی
10

با خواندن مطلب سیستم مدیریت پایگاه داده، می توانید با وظایف و نحوه عملکرد آنها آشنا شوید و بدانید که استفاده کردن از DBMS ها چه مزایا و معایبی دارد.

مطالعه مقاله

saas چیست؟ سرویس مبتنی بر فضای ابری

Software as a Service چه کاربردی دارد؟
زهرا چگینی
10

شما با سرویس مبتنی بر فضای ابری آشنا هستید؟ مطلب امروز ما در مورد یکی از این سرویس ها به نام saas می باشد، ما بررسی کرده ایم که saas چیست و چطور می توانید از آن استفاده کنید.

مطالعه مقاله

14 مورد از پرفروش ترین کتاب های پایتون که باید بخوانید

14 کتاب برتر آموزش پایتون از مبتدی تا حرفه ای
رکسانا طالبی
10

14 کتاب برتر آموزش زبان برنامه نویسی پایتون از مبتدی تا حرفه ای

مطالعه مقاله

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

قدرت زبان پایتون
زهرا چگینی
10

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

مطالعه مقاله