تغییرات جالب در زبان C# که ممکن است ندانید!

لرن سایت,آموزش برنامه نویسی سی شارپ,آموزش طراحی سایت,آموزش برنامه نویسی اندروید,آموزش SQL c# android php jquery,قالب سایت

شما اینجا هستید : صفحه اصلی

با عضویت در کانال تلگرامی لرن سایت ، اولین فردی باشید که از تخفیفات و مطالب جدید خبردار می شوید !

تغییرات جالب در زبان C# که ممکن است ندانید!

تغییرات جالبی در زبان C# که ممکن است ندانید!

 

از زمانی که مایکروسافت زبان سی شارپ را به عنوان سوگلی خود معرفی کرد دولوپر های زیادی جذب آن شدند ، زیرا این زبان یک زبان ساده ، مدرن ، کار آمد و شئ گرا میباشد.

در سال 2007 همکاران مایکروسافت نسخه ایی اوپن سورس از .Net Framework را با نام Mono  ارائه دادند که تحت لینوکس کار میکرد.

اما این برای مایکروسافت کافی نبود و از سال 2014 ماکروسافت اعلام کرد که  از الان کل دات نت فریمورک ( شامل کامپاسورسLI ، CLR  و…) به صورت اوپن سورس ، و از طریق گیت هاب قابل دسترسی هستند!

این امر باعث گسترش انجمن دات نت شد و زبان سی شارپ را تبدیل به زبانی غنی تر و پرجنب و جوش تر کرد. حال تغییرات جذاب این زبان را باهم مرور میکنیم که ممکن است ندانید !

عملگر ناوبری امن (عملگر ؟)

عملگر “؟” از دات نت 2 همراه با نوع داده های nullable  (قابل نال شدن) اضافه شد که تایین میکرد یک داده نال هست یا خیر( میتوانیم این مورد را با پراپرتیِ HasValue  نیز تست کنیم).

در سی شارپ 6 ماکروسافت قابلیت “؟” (ناوبری امن ) را اضافه کرد. این عملگر بسیار ساده و کارآمد میباشد. بایید با یک مثال آن را متوجه شویم ، فرض کنید که میخواهیم به یک متد یا پراپرتی از یک کلاس دسترسی پیدا کنیم . ما میتوانیم از عملگر ناوبری (“.”) استفاده کنیم . (class.Methode();) اما اگر متد یا پراپرتی ما نال باشد ما با اکسپشن معروف NullRefrenceException  مواجه میشویم. پس نتیجه میگیریم ما باید هر متد یا پراپرتی را قبل از دسترسی بررسی کنیم که مقدار آن نال نباشد.

با عملگر ناوبری امن ما فقط اینکار را انجام میدهیم :

راهی برای ساختن String (رشته)

در سی شارپ راه های زیادی برای ساختن رشته وجود دارد که بهترینِ آن سریع ترینِ آن است ، StringBuilder!

 

درصورتی که ما چند پارامتر داشته باشیم که بخواهیم با استرینگ ادغام شوند، میتوانیم از string.Format  استفاده کنیم:

اما حالا سینتکس جدید در سی شارپ 6.0 را ببینید:

یک روش ظریف برای ساختار بندی یک شئ (Tuple)

 

(این فقط یک مثال از استفاده Tuple میباشد)

اکثر زبان های برنامه نویسی از متد ها و توابع با فرمتی  استاندارد ( ساختار ، پارامتر ها و در نهایت برگرداندن یک شئ) پشتیبانی میکنند. اگر ما بخواهیم بیش از یک شئ یا پارامتر را بر گردانیم مجبور به استفاده از لیست ها یا آرایه ها هستیم! اما در سی شارپ 6.0 ماکروسافت راه دیگری را به نام Tuple پیش روی ما گذاشته ،

مطلب پیشنهادی :  Control در سی شارپ

تعریفی که MSDN  از Tuple  دارد این است :

“یک ساختار داده ای که یک عدد خاص و دنباله ای از عناصر دارد.”برای مثال در یک فروشگاه ما از یک Tuple  استفاده کرده ایم که از سه المان تشکیل شده است ،المان شماره 1 برای نام شخص ، المان شماره 2 برای سال تولد و المان شماره 3 برای درآمد شخص.

 

روش های زیادی برای ساخت Tuple  موجود هستند از جمله:

  • استفاده از کانستراکتور پیشفرض – new

 

  • استفاده از متد استاتیک – Create

 

 

در سی شارپ 7.0 راه جدیدی برای تعریف Tuple  و خلاص شدن از شر item1 , item 2 , item3  به وجود آمده که با نگاه کردن به کد زیر متوجه آن میشوید:

 

 

Params

ممکن است بخواهیم در یک متد بیشتر از یک شئ را از کاربر بگیریم ، در اینگونه مواقع میتوان از کلمه کلیدی params  استفاده کرد (این کلمه کلیدی زمانی کاربردی تر میشود که تعداد مقادیری که از کاربر گرفته میشود مشخص نیست):

 

 

وابستگی static

در سی شارپ 6.0 به بعد میتوانید وابستگی های خود را به صورت  static اضافه کنید ، این یعنی نیازی به صدا زدن کلاسِ مربوطه نداریم:

 

 

امیدواریم این مطلب مورد توجه شما قرار گرفته باشد ، خوشحال میشویم اگر شما هم تغییرات مد نظر خود را در بخش نظرات با ما درمیان بگذارید!

 

 

اگه مطلب خوشتون اومد پس لطفا به اشتراک بذارین تا بقیه هم خوششون بیاد :)

نظرات

1
دیدگاه بگذارید

avatar
1 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
1 Comment authors
محمد Recent comment authors
  Subscribe  
اطلاع رسانی از :
محمد
مهمان
محمد

دردو بر شما جای خوشحالیه که فناوریهای ماکروسافت خصوصا سی شارپ رشد بهتری دارن
و اینکه متدهای جدید رو در اولین سایت ایرانی دیدم الان حتی استید باتجربه هم هنوز خوشونو با شرایط جدید وفق ندادن