نسخه های سی شارپ همیشه در حال آپدیت هستند. با ارتقای هر نسخه سی شارپ یکسری امکانات جدید به این زبان برنامه نویسی اضافه شده که در این مطلب قصد داریم انواع ورژن های سی شارپ (از جدیدترین ورژن #C تا قدیمی ترین نسخه #C) را به شما معرفی کنیم.
سی شارپ یا نام انگلیسی #C و تلفظ C sharp یک زبان برنامه نویسی همه منظوره، مدرن و شی گرا است. زبان برنامه نویسی سی شارپ توسط Anders Hejlsberg از شرکت مایکروسافت در سال ۲۰۰۰ طراحی شد و بعداً به عنوان یک استاندارد بین المللی توسط Ecma (ECMA-334) در سال ۲۰۰۲ و ISO/IEC (ISO/IEC 23270) در سال ۲۰۰۳ تأیید شد. مایکروسافت #C را همراه با دات نت معرفی کرد. سی شارپ از نظر نحوی شباهت زیادی به جاوا دارد و برای کاربرانی که دانش C++، C یا جاوا را دارند، آسان است.
کمی در مورد Net Framework بدانید
برنامه های Net برنامه های چند پلتفرمی هستند و در این فریمورک می توان از زبان هایی مانند C++، C#، Visual Basic، COBOL و غیره استفاده کرد. فریمورک دات نت به گونه ای طراحی شده است که سایر زبان ها بتوانند از آن استفاده کنند.
همچنین بخوانید: با دوره حرفه ای و از صفر تا صد آموزش ای اس پی دات نت کور براحتی می توانید به این فریمورک مسلط شوید.
( مزایای Asp.Net Core چیست؟ – تفاوت ASP.NET و ASP.NET Core چیست؟ – بازار کار Asp.Net Core چگونه است؟ – Asp.net Core چیست؟ – معرفی کتاب های asp.net core )
انواع ورژن های سی شارپ چه کاربردهایی دارند؟
با استفاده از انواع ورژن های #C این زبان قدرتمند میتوان برنامه های مختلفی را تحت پلتفرمهای مختلف توسعه داد که در ادامه به انها می پردازیم:
- برنامه های موبایل
- برنامه های دسکتاپ
- برنامه های کاربردی وب
- خدمات وب
- وب سایت ها
- بازی ها
- VR
- برنامه های کاربردی پایگاه داده
- و خیلی خیلی بیشتر!
انواع نسخه های سی شارپ :
جدول زیر ویژگی های هر نسخه از زبان #C (سی شارپ) را لیست کرده است :
C# 1.0 (سال ۲۰۰۲ – همراه با .NET Framework 1.0)
این نسخه اولین نسخه رسمی #C بود که توسط مایکروسافت همراه با Visual Studio .NET 2002 منتشر شد. در این نسخه، اصول پایه زبان شیءگرا معرفی شدند. یعنی کلاسها (Classes)، اینترفیسها (Interfaces)، ساختارها (Structs)، متدها، ویژگیها (Properties)، فضای نام (Namespaces) و مدیریت خطا از طریق Exception Handling اضافه شدند. در این نسخه مفاهیمی مانند وراثت (Inheritance)، چندریختی (Polymorphism)، و کپسولهسازی (Encapsulation) برای ساخت نرمافزارهای شیءگرا به صورت کامل پشتیبانی شدند. Garbage Collector نیز به عنوان بخشی از CLR وظیفه مدیریت حافظه را بهصورت خودکار بر عهده داشت.
C# 2.0 (سال ۲۰۰۵ – .NET Framework 2.0)
در این نسخه زبان C# دچار پیشرفت بزرگی شد. ویژگی مهم آن Generics بود که امکان نوشتن کدهای عمومی و قابلاستفاده مجدد را فراهم کرد (مثل List<T>). همچنین Nullable types برای پشتیبانی از مقادیر null در انواع مقدار (مانند int?) معرفی شد. ویژگیهای دیگری مثل Anonymous methods (توابع بدون نام برای استفادههای موقت)، Iterators (با کلمه کلیدی yield return برای پیمایش مجموعهها)، و Partial classes (تقسیم یک کلاس در چند فایل) نیز افزوده شدند. این نسخه پایهگذار بسیاری از مفاهیم مدرن #C شد.
C# 3.0 (سال ۲۰۰۷ – .NET Framework 3.5)
نسخه ۳.۰ یکی از مهمترین نسخههای تاریخ C# است، زیرا LINQ (Language Integrated Query) در این نسخه معرفی شد. LINQ انقلابی در کار با دادهها بود و اجازه داد تا روی مجموعهها، پایگاه دادهها و XML به صورت مستقیم با دستورات مشابه SQL کار کنیم. علاوه بر LINQ، ویژگیهایی مثل Lambda expressions برای نوشتن توابع مختصر، Extension methods برای افزودن رفتار جدید به کلاسهای موجود بدون تغییر در آنها، و Anonymous types برای ایجاد شیءهای بدون تعریف کلاس اضافه شدند. همچنین مفهوم var برای نوعدهی ضمنی و object initializers برای سادهتر ساختن اشیا معرفی شد.
C# 4.0 (سال ۲۰۱۰ – .NET Framework 4.0)
تمرکز این نسخه بر روی انعطافپذیری بیشتر بود. ویژگی dynamic typing معرفی شد که اجازه میدهد نوع داده در زمان اجرا مشخص شود (در تضاد با نوعدهی ایستا). این ویژگی به خصوص برای کار با COM objects و اسکریپتها مفید بود. همچنین Named and Optional Parameters اضافه شد که باعث شد در متدها بتوان پارامترها را با نامشان مقداردهی کرد یا بعضی پارامترها را حذف کرد. ارتباط با COM نیز سادهتر شد، مخصوصاً برای برنامههایی که با Office Automation سروکار داشتند.
C# 5.0 (سال ۲۰۱۲ – .NET Framework 4.5)
مهمترین ویژگی این نسخه، معرفی async و await بود. این دو کلمه کلیدی انقلابی در برنامه نویسی ناهمزمان ایجاد کردند و باعث شدند نوشتن کدهای asynchronous بسیار سادهتر شود. بهجای استفاده از callbackها و threadهای پیچیده، حالا برنامهنویس میتواند بهصورت مستقیم از await استفاده کند. همچنین ویژگی Caller Information Attributes اضافه شد که اجازه میدهد اطلاعاتی مانند نام متد فراخواننده یا شماره خط را دریافت کنیم (مفید برای لاگگیری و اشکالزدایی).
C# 6.0 (سال ۲۰۱۵ – همراه با Roslyn compiler)
این نسخه بیشتر روی راحتی و خوانایی کد تمرکز داشت. ویژگیهایی مثل String interpolation ($"Hello {name}") برای راحتتر ساختن رشتهها اضافه شد. Expression-bodied members اجازه داد تا متدهای کوچک را در یک خط بنویسیم. Null-conditional operator (?.) برای جلوگیری از NullReferenceException اضافه شد. همچنین Auto-property initializers و using static برای سادهتر کردن نوشتار معرفی شدند. از این نسخه به بعد، کامپایلر جدید “Roslyn” معرفی شد که به مایکروسافت اجازه داد توسعه زبان را سریعتر پیش ببرد.
C# 7.x (سالهای ۲۰۱۷–۲۰۱۸ – .NET Core 2.x)
این نسخه مجموعهای از ویژگیهای جدید برای افزایش قدرت زبان آورد. Tuples برای بازگرداندن چند مقدار از یک متد، Pattern matching برای بررسی دقیقتر نوع و ساختار دادهها، و Local functions برای تعریف توابع درون متدها از جمله مهمترین امکانات بودند. همچنین Out variables برای تعریف متغیر درون پارامتر خروجی و Ref returns برای بازگشت ارجاع معرفی شدند. در نسخههای ۷.۱ تا ۷.۳ بهبودهایی مثل async main و generic constraints بیشتر هم افزوده شد.
C# 8.0 (سال ۲۰۱۹ – .NET Core 3.0)
در این نسخه تغییرات بسیار مهمی اتفاق افتاد. مهمترین ویژگی Nullable reference types بود که به برنامهنویس کمک میکرد خطاهای مربوط به null را در زمان کامپایل شناسایی کند. Switch expressions و Pattern matching enhancements نیز نوشتن switchهای خواناتر و منعطفتر را ممکن کردند. Async streams با ترکیب await foreach معرفی شدند تا بتوان دادههای جریانی را بهصورت ناهمزمان پردازش کرد. همچنین Default interface methods و Range/Index syntax (.., ^) اضافه شدند.
C# 9.0 (سال ۲۰۲۰ – .NET 5)
در این نسخه، ویژگی بزرگ Records معرفی شد که برای ساخت اشیای immutable با مقادیر برابر (value-based equality) طراحی شده بود. Init-only properties اجازه داد ویژگیهایی داشته باشیم که فقط هنگام ساخت شیء مقدار بگیرند. Top-level statements نیز برای نوشتن برنامههای کوتاهتر (مثلاً در آموزشها یا اسکریپتها) اضافه شد. همچنین Pattern matching و target-typed new بهبود یافتند.
C# 10.0 (سال ۲۰۲۱ – .NET 6)
در این نسخه ویژگیهایی برای سادهتر کردن ساختار پروژه معرفی شد. Global using directives باعث شد بتوان از importهای عمومی در همه فایلها استفاده کرد. File-scoped namespaces اجازه داد فضای نام را در یک خط تعریف کنیم و دیگر کل فایل را در بلوک namespace قرار ندهیم. Record structs برای ساخت رکوردهایی بر اساس struct معرفی شدند. علاوه بر این، lambda expressionها هوشمندتر شدند و پشتیبانی از نوع برگشتی داشتند.
C# 11.0 (سال ۲۰۲۲ – .NET 7)
در این نسخه، Raw string literals معرفی شدند که نوشتن رشتههای چندخطی (مثل JSON یا SQL) را بدون نیاز به escape کردن ساده کردند. Generic math امکان انجام عملیات ریاضی عمومی روی انواع مختلف عددی را فراهم کرد. Required members ویژگی جدیدی بود که برنامهنویس را مجبور میکرد حتماً ویژگی خاصی را مقداردهی کند. همچنین List patterns برای بررسی ساختار دادهها در pattern matching اضافه شد.
C# 12.0 (سال ۲۰۲۳ – .NET 8)
آخرین نسخه منتشرشده تا امروز، ویژگیهای قابلتوجهی دارد. Primary constructors for all types که پیشتر فقط در recordها بود، حالا برای همه کلاسها در دسترس است. Collection expressions امکان نوشتن مجموعهها با ساختاری سادهتر مانند [۱, ۲, ۳] را فراهم میکند. Inline arrays برای ساخت آرایههایی با حافظه ثابت معرفی شدند. همچنین ویژگی Interceptors (در حالت Preview) برای رهگیری و تغییر رفتار متدها در زمان کامپایل معرفی شده است.
همچنین بخوانید: اتوماسیون اداری تحت وب
جدیدترین نسخه سی شارپ کدام است؟
جدیدترین نسخه سی شارپ یعنی C# 12 که همراه با .NET 8 در سال ۲۰۲۳ منتشر شده، یکی از بزرگترین بهروزرسانیهای این زبان برنامه نویسی در سالهای اخیر است. در جدیدترین ورژن سی شارپ تمرکز بر سادگی، خوانایی و بهبود عملکرد بوده است. ویژگیهایی مانند Primary constructors برای همه انواع، Collection expressions برای تعریف سادهتر لیستها و مجموعهها، و Inline arrays برای کارایی بالاتر در مدیریت دادهها معرفی شدهاند. همچنین قابلیتی به نام Interceptors در حالت پیشنمایش اضافه شده که به توسعهدهندگان امکان کنترل و تغییر رفتار متدها را در زمان کامپایل میدهد. این نسخه گام مهمی در جهت سادهتر و سریعتر شدن توسعه نرمافزار در اکوسیستم .NET بهشمار میرود.
برای کار با ورژن های سی شارپ چه محیط هایی وجود دارد و توصیه می شود؟
در صورتیکه شما بخواهید با انواع نسخه سی شارپ کار کنید چه جدید چه قدیمی، بهترین محیط برای کار Visual studio است که در سه نسخه مختلف است اولین آن community است که برای دانشجوها و رایگان است که قابلیتهای کمی دارد، نسخه دیگر آن professional است که قابلیتهای بیشتری دارد و اما بهترین و کاملترین نسخه آن enterprise است که در سازمانها و شرکتهای بزرگ استفاده میشود. البته توجه داشته باشید که ویژوال استودیو برای همه سیستمعاملها وجود دارد مانند مک و.. اما اگر سیستم شما ضعیف است مایکروسافت یک نرمافزار دیگری انتشار داده است به نام visual studio code که سبکتر از نسخه اصلی است اما هر دو نرم افزار توسط کمپانی Microsoft توسعه داده شده اند.
همچنین بخوانید: ویژوال استودیو کد چیست؟
انتخاب آخرین ورژن سی شارپ (جدیدترین نسخه سی شارپ) در ویژوال استدیو
در visual studio می تونید ورژن زبان سی شارپ را برای پروژه هایتان انتخاب کنید. برای انتخاب آخرین نسخه سی شارپ از solution explorer ، روی پروژه کلیک راست کنید و Properties -> Build را انتخاب کنید و سپس گزینه Advanced انتخاب کتید. با این کار پنجره Advanced Build Settings باز خواهد شد، جایی که شما می توانید “Language Version” رو از منوی افتادنی انتخاب کنید.
در ورژن های قبلی ویژوال استدیو، برای انتخاب ورژن پیش فرض زبان نصب شده روی default تنظیم می شد. حالا، یک تغییری کرده و به صورت پیش فرض، روی جدیدترین نسخه #C است (C# latest major version) که از نسخه نهایی زبان سی شارپ شروع می شود. با این انتخاب فقط می تونید از امکانات همان نسخه سی شارپ استفاده کنید. صرف نظر از اینکه شما ورژن های دیگری را هم نصب کرده باشید . مگر اینکه ورژن های جزئی رو انتخاب کنید. به مسیر Properties -> Build -> Advanced و برای انتخاب آخرین نسخه #C جزئی نصب شده C# latest minor version(latest) را انتخاب کنید.
آخرین ورژن سی شارپ زبان پیش فرض تنظیم شده است ، و انتخاب C# latest minor version همیشه به جدیدترین ورژن سی شارپ اشاره دارد.
همچنین بخوانید: کلیدهای میانبر ویژوال استودیو کد | افزونه های vscode
نتیجه گیری از انواع نسخه های #C
#C(سی شارپ) یک زبان برنامه نویسی شی گرای قدرتمند و ساده است که به وسیله ی شرکت مایکروسافت توسعه داده شده است. از مزایای سی شارپ این ست که برنامههای مختلفی را میتوان با انواع نسخه های #C توسعه داد که به مهمترین آنها اشاره کردیم. نسخه های سی شارپ از C# 1.0 شروع شده اند و به آخرین و جدیدترین نسخه سی شارپ که در حال حاضر C# 12 است ختم شده است. مسلما از زمان اولین نسخه #C تا انتشار آخرین نسخه های #C پیشرفت هایی داشته که باعث شده این همه کاربر را همچنان به خود جذب کند.
برای یادگیری سی شارپ در سطوح حرفه ای می توانید دوره آموزش سی شارپ پیشرفته سایت الکامکو رو ببینید.
دوره صفر تا صد #C پروژه محور بوده و ساخت پروژه های حرفه ای در آن به شما اموزش داده می شود. سطح دوره از پایه تا فوق پیشرفته می باشد. بعد از پایان کار می توانید براحتی وارد بازار کار برنامه نویسی شوید.
لینک دوره آموزش زبان برنامه نویسی سی شارپ
با ثبت نام در دوره آموزش زبان برنامه نویسی سی شارپ از مزایای زیر بهرهمند میشوید :
- دسترسی به فایل های دوره (فیلم های آموزش سی شارپ) به صورت همیشگی
- پشتیبانی رایگان ۳ ماهه با قابلیت تمدید
- ورود آسان به بازار کار سی شارپ
- انجام انواع تمرین ها و پروژه ها در طول دوره
- در اختیار داشتن سورس کد تمامی پروژه های انجام شده
- آموزش با جدید ترین ورژن ویژوال استودیو
- به همراه آموزش کار با دیتابیس Sql Server
- و…
لیست سایر دوره های آموزش برنامه نویسی الکامکو:
- دوره آموزش برنامه نویسی اندروید
- آموزش برنامه نویسی با کاتلین
- آموزش معماری mvp در اندروید
- آموزش طراحی ui و ux اندروید
- دوره asp.net core
- دوره آموزش فلاتر
- ساخت اپلیکیشن فروشگاهی اندروید


















































































































































































































































































































































































































