c# - ويندوز - ما هي لغة الكمبيوتر
ما هي أرقام الإصدارات الصحيحة لـ C#؟ (6)
ما هي أرقام الإصدارات الصحيحة لـ C #؟ ماذا خرج عندما؟ لماذا لا يمكنني العثور على أي إجابات حول C # 3.5 ؟
هذا السؤال هو في المقام الأول لمساعدة أولئك الذين يبحثون عن إجابة باستخدام رقم إصدار غير صحيح ، على سبيل المثال C # 3.5 . والأمل هو أن أي شخص يفشل في العثور على إجابة برقم الإصدار الخطأ سيجد هذا السؤال ثم يبحث مرة أخرى برقم الإصدار الصحيح.
تاريخ إصدار لغة C #:
هذه هي إصدارات C # المعروفة في وقت كتابة هذه السطور:
- الإصدار C # 1.0 مع .NET 1.0 و VS2002 (يناير 2002)
- C # 1.2 (بشكل غريب بما فيه الكفاية) ؛ صدر مع .NET 1.1 و VS2003 (أبريل 2003). الإصدار الأول لاستدعاء
Dispose
على sIEnumerator
التي نفذتIDisposable
. بعض الميزات الصغيرة الأخرى. - C # 2.0 صدر مع .NET 2.0 و VS2005 (نوفمبر 2005). الميزات الجديدة الرئيسية: الأدوية الجنيسة ، والأساليب المجهولة ، والأنواع غير المكتملة ، وكتل المكره
- C # 3.0 صدر مع. NET 3.5 و VS2008 (نوفمبر 2007). الميزات الجديدة الرئيسية: تعبيرات لامدا ، طرق التمديد ، أشجار التعبير ، الأنواع المجهولة ، الكتابة الضمنية (
var
) ، تعبيرات الاستعلام - C # 4.0 صدر مع. NET 4 و VS2010 (أبريل 2010). الميزات الجديدة الرئيسية: الربط المتأخر (
dynamic
) ، التباين العام للمفوض والواجهة ، المزيد من دعم COM ، الوسيطات المسماة ، نوع البيانات tuple والمعايير الاختيارية - الإصدار C # 5.0 مع .NET 4.5 و VS2012 (أغسطس 2012). الميزات الرئيسية : البرمجة المتزامنة ، سمات معلومات المتصل. كسر التغيير: إغلاق حلقة متغيرة .
- C # 6.0 صدر مع. NET 4.6 و VS2015 (يوليو 2015). نفذت من قبل Roslyn . Features : مُهيئات للخصائص التي يتم تنفيذها تلقائيًا ، باستخدام توجيهات لاستيراد أعضاء ثابتين ، فلاتر الاستثناءات ، عناصر تهيئة العناصر ،
await
فيcatch
finally
، الإضافةAdd
أساليب في مجموعة التهيئة. - C # 7.0 تم إصداره باستخدام .NET 4.7 و VS2017 (مارس 2017) الميزات الجديدة الرئيسية: tuples و ref locals و return ref ، ومطابقة النموذج (بما في ذلك عبارات التبديل المستندة إلى النمط) ، وإدراج معلمات المعلمات ، والوظائف المحلية ، والحروف الثنائية ، وفواصل الأرقام ، والعودة async التعسفي .
- C # 7.1 صدر مع VS2017 v15.3 (أغسطس 2017) الميزات الجديدة: async الرئيسي ، اسم العضو tuple ، والتعبير الافتراضي ، ومطابقة نمط مع الأدوية .
- C # 7.2 صدر مع VS2017 v15.5 (نوفمبر 2017) ميزات جديدة: معدل الوصول المحمي الخاص ، Span <T> ، ويعرف أيضا باسم المؤشر الداخلي ، ويعرف أيضا باسم بنية stackonly ، كل شيء آخر .
- C # 7.3 صدر مع VS2017 v15.7 (مايو 2018). ميزات جديدة: التعداد ، وفرض قيود النوع العام
unmanaged
. إعادة تعيينref
. تحسينات غير آمنة: تهيئةstackalloc
،stackalloc
المؤقتfixed
، والبياناتfixed
المخصصة. تحسين الحمولة الزائدة. متغيرات التعبير في التهيئة والاستعلامات.==
و!=
محددة للصفوف. يمكن الآن استهداف الحقول الخلفية للمواقع التلقائية حسب السمات. - C # 8.0 حاليا في المعاينة. الميزات الجديدة المتوقعة : الأنواع المرجعية غير
IAsyncEnumerable<T>
،IAsyncEnumerable<T>
، النطاقات ، وطرق الواجهة الافتراضية.
ردا على سؤال OP:
ما هي أرقام الإصدارات الصحيحة لـ C #؟ ماذا خرج عندما؟ لماذا لا يمكنني العثور على أي إجابات حول C # 3.5؟
لا يوجد شيء مثل C # 3.5 - سبب الارتباك هنا هو أن C # 3.0 موجود في .NET 3.5. اللغة والإطار يتم إصدارها بشكل مستقل ، ومع ذلك - كما هو CLR ، الذي هو في الإصدار 2.0 ل. NET 2.0 من خلال 3.5 ،. NET 4 إدخال CLR 4.0 ، حزم الخدمات على الرغم من. يحتوي CLR في. NET 4.5 تحسينات مختلفة ، ولكن الإصدار غير واضح: في بعض الأماكن قد يشار إليها باسم CLR 4.5 ( هذه الصفحة MSDN المستخدمة للإشارة إليها بهذه الطريقة ، على سبيل المثال) ، ولكن لا تزال الخاصية Environment.Version
تقارير 4.0.xxx.
تتوفر معلومات أكثر تفصيلاً عن العلاقة بين اللغة وإصدارات وقت التشغيل وإطار العمل على C # في موقع Depth . يتضمن ذلك معلومات حول ميزات C # 3.0 التي يمكنك استخدامها عند استهداف .NET 2.0. (إذا كان أي شخص يرغب في جلب كل المحتوى إلى إجابة الويكي هذه ، فإنهم مرحب بهم.)
اعتبارًا من 3 مايو 2017 ، قام فريق C # Language بإنشاء تاريخ إصدارات C # وميزات على repub جيثوب: الميزات المضافة في إصدارات لغة C # . هناك أيضًا صفحة تتعقب ميزات اللغة القادمة والتي تم تنفيذها مؤخرًا .
المشكلة الأكبر عند التعامل مع أرقام إصدار C # هي حقيقة أنها غير مرتبطة بإصدار من .NET Framework ، والذي يبدو أنه بسبب الإصدارات المتزامنة بين Visual Studio و .NET Framework.
في الواقع ، يرتبط إصدار C # بالمتحول ، وليس بإطار العمل. على سبيل المثال ، في Visual Studio 2008 يمكنك كتابة C # 3.0 وهدف .NET Framework 2.0 و 3.0 و 3.5. تصف التسميات C # 3.0 إصدار صيغة الشفرة والميزات المدعومة بالطريقة نفسها التي تصف بها المواصفة ANSI C89 و C90 و C99 كود / خصائص الشفرة لـ C.
ألق نظرة على Mono ، وستلاحظ أن Mono 2.0 (معظمها تم تطبيق الإصدار 2.0 من .NET Framework من مواصفات ECMA) يدعم بنية C # 3.0 وميزاتها.
مقارنة المقالات MSDN "ما هو الجديد في لغة C # 2.0 و المحول البرمجي" و " ما هو جديد في Visual C # 2005 " ، يمكن استنتاج أن "C # major_version.minor_version" يتم إنشاء وفقا لترقيم إصدار المحول البرمجي.
يوجد C # 1.2 الموافق .NET 1.1 و VS 2003 والمسمى أيضاً كـ Visual C # .NET 2003 .
ولكن أبعد من ذلك توقفت Microsoft عن زيادة الأرقام الثانوية (بعد النقاط) أو جعلها غير الصفر ، 0
. على الرغم من أنه تجدر الإشارة إلى أنه يتم تسمية C # الموافق لـ .NET 3.5 في msdn.microsoft.com كـ "Visual C # 2008 Service Pack 1" .
يوجد نصان متوازيان: بواسطة ترقيم الإصدار .NET / compiler الرئيسي وترقيم Visual Studio.
C # 2.0 مرادف لـ Visual C # 2005
يتوافق C # 3.0 (أو ، بشكلٍ أكثر استهدافًا) مع:
- .NET 2.0 <==> Visual C # 2005
- .NET3.0 <==> Visual C # 2008
- .NET 3.5 <==> Visual C # 2008 Service Pack 1
هذا هو نفس معظم الإجابات هنا ، ولكن جدولة لسهولة ، ولديه إصدارات Visual Studio و .NET للتأكد من اكتمالها.
╔════════════╦════════════╦══════════════╦═════════════╦══════════════╗
║ C# version ║ VS version ║ .NET version ║ CLR version ║ Release date ║
╠════════════╬════════════╬══════════════╬═════════════╬══════════════╣
║ 1.0 ║ 2002 ║ 1.0 ║ 1.0 ║ Feb 2002 ║
║ 1.2 ║ 2003 ║ 1.1 ║ 1.1 ║ Apr 2003 ║
║ 2.0 ║ 2005 ║ 2.0 ║ 2.0 ║ Nov 2005 ║
║ ║ ║ 3.0 ║ 2.0 ║ Nov 2006 ║
║ 3.0 ║ 2008 ║ 3.5 ║ 2.0 ║ Nov 2007 ║
║ 4.0 ║ 2010 ║ 4.0 ║ 4 ║ Apr 2010 ║
║ 5.0 ║ 2012 ║ 4.5 ║ 4 ║ Aug 2012 ║
║ 5.0 ║ 2013 ║ 4.5.1 ║ 4 ║ Oct 2013 ║
║ ║ ║ 4.5.2 ║ 4 ║ May 2014 ║
║ 6.0 ║ 2015 ║ 4.6 ║ 4 ║ Jul 2015 ║
║ ║ ║ 4.6.1 ║ 4 ║ Nov 2015 ║
║ ║ ║ 4.6.2 ║ 4 ║ Aug 2016 ║
║ 7.0 ║ 2017 ║ ║ ║ Mar 2017 ║
║ ║ ║ 4.7 ║ 4 ║ May 2017 ║
║ 7.1 ║ 2017(v15.3)║ ║ ║ Aug 2017 ║
║ ║ ║ 4.7.1 ║ 4 ║ Oct 2017 ║
║ 7.2 ║ 2017(v15.5)║ ║ ║ Dec 2017 ║
║ ║ ║ 4.7.2 ║ 4 ║ Apr 2018 ║
║ 7.3 ║ 2017(v15.7)║ ║ ║ May 2018 ║
╚════════════╩════════════╩══════════════╩═════════════╩══════════════╝
ملاحظة: تطوير .NET مستقل إلى حد كبير عن VS في هذه الأيام ، وليس هناك ارتباط بين إصدارات كل منهما. الرجوع إلى " إصدارات .NET Framework و التبعيات " للحصول على المزيد.
VERSION _____
لغة ______
مواصفات ______
MICROSOFT COMPILER
C # 1.0 / 1.2 ____
ديسمبر 2001 ؟ / 2003 ؟ ___________
يناير 2002 ؟
C # 2.0 _______
September 2005 ________________
November 2005 ؟
C # 3.0 _______
May 2006 _____________________
November 2006 ؟
C # 4.0 _______
March 2009 (draft) ______________
April 2010 ؟
C # 5.0 ؛ أصدرت مع. NET 4.5 في أغسطس 2012
C # 6.0 صدر مع. NET 4.6 2015
C # 7.0 صدر مع. NET 4.7 2017
C # تاريخ الإصدار:
C # هي لغة برمجة بسيطة وموجهة للكائنات تم تطويرها بواسطة Microsoft.
تطور C # كثيرًا منذ الإصدار الأول في 2002. تم تقديم C # مع .NET Framework 1.0.
يسرد الجدول التالي الميزات الهامة المقدمة في كل إصدار من C #.
ويتوفر أحدث إصدار من C # في إصدارات C # .