در این مقاله قصد دارم دلایل محکمی را بیان کنم تا قدرت سی شارپ را درک کنید از سینتکس ساده تا فریم ورک های قدرتمند
سلام دوستان(مثل همیشه از الان این مقاله را با زبان عامیانه می نویسم)
خیلی ها با سی شارپ آشنایی زیادی ندارن اما قصد دارن برن سمتش و اون رو یاد بگیرن
متاسفانه بعضی از افرادی که حتی اسم اون ها رو نمیشه برنامه نویس گذاشت از روی تعصب و نادانی شروع به بدگویی از این زبان می کنن و شروع به تبلیغ زبان خودشون می کنن جوری که انگار سهام اون شرکت رو خریدن(شاید ارث باباشونه)
این افراد با دلایل غیر منطقی سعی دارن بگن بیاین سمت زبانی که ما کار می کنیم
قبل از شروع اصل مطلب باید یک موضوعی رو بیان کنم 99% مهم نیست چه تکنولوژی کار می کنید مهم اینه توش تخصص داشته باشین
خوب حالا بریم سراغ سی شارپ
سی شارپ یک زبان برنامه نویسی سطح بالا و شی گرا هست که توسط مایکروسافت ارائه شده و اکثر فریم ورک هاش اوپن سورس هست
آموزش سی شارپ رایگان مقدماتی تا پیشرفته
شما می توانید با سی شارپ در پلتفرم های زیر برنامه بسازید:
1) Windows
2) Web Backend/Frontend
3) Linux
4) Mac OS
5) Android
6) IOS
7) Game
8)....
چند تا از فریم ورک ها و تکنولوژی های محبوب و قدرتمند سی شارپ هم نام می برم و جلوتر توضیح میدمشون
1) WindowsForm
2) WPF
3) Xamarin
4) Asp.net Core
5) Blazor
6) Unity
7) MAUI
حالا بریم که واستون توضیحشون بدم
برنامه نویسی ویندوز با سی شارپ
1) WindowsForm
ویندوز فرم یک تکنولوژی برای طراحی برنامه های ویندوزی در سی شارپ هست که کمی قدیمی شده اما همچنان خیلی استفاده میشه و برای شروع سی شارپ بهتون نصیحت می کنم مانند اکثر سی شارپ کار ها از این تکنولوژی شروع کنید تا سینتکس سی شارپ رو فرا بگیرین
با این تکنولوژی به سادگی و با درگ اند دراپ میتونید برنامه هایی مبتنی بر GUI بسازید
2) WPF
در WPF هم مثل ویندوز فرم برنامه با رابطه گرافیکی ایجاد می کنید اما یک سری تفاوت داره
1) نسبت به ویندوز فرم خیلی دستتون در دیزاین کردن بازه
2) برای دیزاین کردن از یک ماراپ لنگویج (زبان نشانه گذاری) با نام XAML کار می کنید
3) ظاهر برنامه ها با کارت گرافیک ران میشه و وابسته به رزولوشن صفحه نیست و این یعنی پرفورمنس بهتر
4)....
برنامه نویسی اندروید و IOS با سی شارپ
1) Xamarin
بعد از اینکه بخش زیادی از مردم رفتن و موبایل خریدن و برنامه نویسی موبایل مود شد مایکروسافت هم رفت و Xamarin رو برای دات نت کارا خرید و شروع کرد به توسعه اون یکی از خوبی های زامارین این هست که شما یک بار کد می زنید و خروجی اندروید و IOS میگیرین
چون قول دادم تعریف بیخود نکنم نمی تونم بگم زامارین بهتر از جاوا هست ولی می تونم قول بدم 99% کارایی که جاوا انجام میده رو زامارینم انجام میده و بزرگترین فرقش هم اینه حجم خروجی یکم بیشتر هست در حد چند مگ
ترتیب یادگیری زبان های برنامه نویسی
2) MAUI
رسیدیم به یکی از بهترین فریم ورک های سی شارپ که فعلا تو نسخه ازمایشی هست و به زودی ورژن رسمیش میاد
شما اینجا فقط یک بار کد میزنی و خروجی
Android
IOS
Windows
Mac OS
میگیری و این خیلی عالی هست درضمن پرفومنسش هم خیلی بهتر از زامارین هست
برنامه نویسی وب با سی شارپ
رسیدیم به بخش مورد علاقه من
در زمینه وب سی شارپ فریم ورک های مختلفی داره مثل asp.net web form یا asp.net mvc که کامل درموردشون تو سایت توضیح دادم اما اینجا میخوام در مورد قدرتمندترین اونها حرف بزنم Asp.net core
Asp.net core
آموزش Asp.net core 6 پروژه محور رایگان صفر تا صد
طبق آمار Asp.net core بهترین فریم ورک وب هست البته مهم اینه توی کدوم تکنولوژی/زبان/فریم ورک تخصص دارین میخواد PHP باشه می خواد پشمک(زبان برنامه نویسی ایرانی) باشه
سرعت Asp.net core
نمی تونم به دروغ بگم Asp.net core سریع ترین هست
سریع ترین فریم ورک Actix هست که واسه زبان Rust هست ولی همه چیز سرعت نیست و یک مورد دیگه سینتکس زبان راست خیلی رو اعصابه
بعد اون Asp.net core سریع ترین فریم ورک وب هست
تعداد Request ها
Asp.net core از هفت میلیون ریکوئست در ثانیه پشتیبانی میکنه
لاراول از هفت هزار ریکوئست در ثانیه پشتیبانی میکنه
در این زمینهAsp.net core پرچم داره
امنیت
در این ضمینه هم Asp.net core بسیار قوی هست و از بسیاری از فریم ورک های دیگه پیشتازه با چند سرچ می توانید متوجه این موضوع شوید
ولی خوب در پروژه های بسیار بزرگ امنیت چیزی هست که باید به صورت جداگانه روش کار بشه و نمیشه به امنیت اولیه فریم ورک بسنده کرد
Blazor
بلیزور یک تکنولوژی برای بی نیاز سازی از جاوااسکریپت هست که خیلی البته هنوز خیلی کار داره ولی در آینده نچندان دور از نظر من قراره خیلی قدرتمند بشه ولی همونجور که گفتم هنوز کامل نیست
دوستان خیلی نکات زیاد بود و نتونستم همش رو تو یک مقاله بیان کنم احتمالا پارت دوم رو هم بنویسم امیدوارم خوشتون اومده باشه
پایان.