تمام سوالات سوالات بدون پاسخ سوال بپرسید

صورت صحیح اعدادی که در نسخه های C# استفاده می شوند چگونه هستند؟چرا من نمی توانم هیچ پاسخی در رابطه با C# 3.5 پیدا کنم؟
این سوال برای آندسته از کسانی است که با نوشتن شماره های اشتباه ( بعنوان مثال C# 3.5)بدنبال یک جواب می گردند[.در زمان نوشته شدن این مطلب، سوالات بسیاری در رابطه با C# با استفاده از کلمه کلیدی “c#3.5”پرسیده شده است. من قصد دارم با توجه به پاسخ های داده شده به این سوال این مشکل را اصلاح کنم. امیدوارم که تمام کسانی که بدلیل نوشته نسخه های C# بصورت ناصحیح نمی توانند پاسخ مورد نظرشان را بیابند، این سوال را یافته و بنابراین با استفاده از صورت صحیح نوشتن نسخه های C# عمل جستجوی خود را ادامه دهند.
ویرایش: من تمامی سوال هایی را که با C#3.5 و C#4.5 برچسب خورده اند را بترتیب مجددا با C#3 و C#4 برچسب دار کردم.(البته بجز این سوال). آنهایی که این مسئله برایشان مهم است نیز می تولنند بدنبال سوالات جدیدی با این گونه تگ ها بگردند. این می تواند مفید باشد.
منبع:
stackoverflow

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

(30 اوت '11, 03:41) hamedkh ♦

متاسفانه ما بیش از 5 تگ را نمی توانیم داشته باشم.

(30 اوت '11, 03:41) hamedkh ♦

@Martinho: نه، برای مدتها این تنها سوال در مورد C#3.5 بوده است.نکته این اجاست که تگ ها گذاشته شوند تا سایرین چنانچه هرکجا C#3.5 را دیدند ، به این سوال کشیده شوند

(30 اوت '11, 03:42) hamedkh ♦

@John: این ممکن است، اما این باید با تعداد بسیار کمی در مقایسه با C#3.0 و غیره در نظر گرفته شود.

(30 اوت '11, 03:43) hamedkh ♦
2 پاسخ

در ادامه نسخه های موجود C# در حال حاضر آورده شده اند:
عرضه شد. ژانویه 2002)

  1. C# 1.0: که بهمراه .NET 1.0 و VS2002 عرضه شد.(ژانویه 2002)
  2. C# 1.2: بهمراه .NET 1.1 و VS2003 در آپریل 2003 ارائه شد. اولین نسخه در فراخوانی Dispose در IEnumerators بود که IEnumerators را پیاده سازی نمود. و برخی ویژگی ها و امکانات کوچک دیگری نیز داشت.
  3. C# 2.0: بهمراه .NET 2.0 و VS2005 عرضه شد(نوامبر 2005). ویژگی ها و امکانات اصلی آن عبارت بودند از : generic، توابع بینام (anonymous method)، انواع نال پذیر(nullable type) و بلاک های تکراری (iterator block).
  4. C# 3.0: بمهراه .NET 3.5 و VS2008 ارائه شد(نوامبر 2007). مهمترین ویژگی های آن عبارتند از : عبارات lambda، متد های اضافی (extension methods)، درختان عبارات(expression trees) ، انواع بینام (anonymous type)، نوشتن صریح (var)، عبارت های پرس و جو (query expression).
  5. C# 4.0 بهمراه .NET 4.0 و VS2010 ارئه شد(آپریل 2010).مهمترین ویژگی های آن Late binding(اقیاد بصورت پویا)، گوناگونی delegate generic وgeneric interface ، پشتیبانی بیشتر از COM، آرگمان های نامگذاری شده (named argument) و پرامتر های اختیاری (optional parameter).
  6. C# 5.0: ویژگی های آن در PDC 2010 اعلام شد. برنامه نویسی غیر همزمان(async programming) و metaprogramming از ویژگی های آن است.

چیزی بعنوان C#3.5 وجود ندارد. نکته ای که باعث ایجاد ابهام و اشتباه می شود این است که C#3.0 همراه با .NET 3.5 عرضه شده است. زبان برنامه نویسی و framework بطور جداگانه نامگذاری می شوند، همین طور CLR که با وجود آنکه در.NET 2.0 تا .NET3.5 از CLR 2.0 استفاده شده است در .NET 4.0 ، CLR 4.0 ارائه شده است.(بدون درنظر گرفتن سرویس پک).
اطلاعات بیشتر در زمینه نامگذاری نسخه های زبانها، runtime و framework را می توان در آدرس زیر مشاهد نمود:
http://csharpindepth.com/Articles/Chapter1/Versions.aspx
این وب سایت اطلاعات مفیدی را در مورد چگونگی استفاده از ویژگی های C#3.0 در .NET 2.0 ارائه می دهد.( خوش حال می شویم اگر کسی تمامی محتوای این سایت را در داخل این wiki بیاورد(.

بهتر نیست مطالب این wiki را بعنوان جواب صحیح ارائه دهید؟.بسیار مطالب خوبی دارد.

(30 اوت '11, 04:52) hamedkh ♦

نتوانستم راهی را برای اصلاح آن بیابم، احتمالا چون خودم آن را نوشتم. (من آن را پیش از ارائه سوال نوشتم.نمی خواهم شخص دیگری با انجام کار تکراری وقتش را به هدر دهد). اگر این جواب صحیح را ارئه دهد دیگر مشکلی نخواهد بود.

(30 اوت '11, 04:52) hamedkh ♦

می خواهم این نکته را اضافه کنم که این امکان وجود دارد که شما برخی ویژگی های C# 3.0 را در .NET2.0 با استفاده از کامپایلر .NET3.0 استفاده اجرا کنید.

(30 اوت '11, 04:53) hamedkh ♦

@Michael: تمامی جزئیات مربوط به آن در لینک بالا وجود دارد.من آن را مطلب را در لینک روشن تر کرده ام.

(30 اوت '11, 04:53) hamedkh ♦

@Dercsar: متد های extension درC# 2.0 وجود ندارند. آنها برای اولین بار در C# 3.0 در .NET 3.5 ارئه شدند.

(30 اوت '11, 04:54) hamedkh ♦

مهمترین مشکلی که در ارتباط با نسخه های C# وجود دارد این است که شماره های مربوط به این نسخه ها با .NET framework مرتبط نمی باشد. از آن جایی که.NET Framework و Visual Studio همزمان با هم عرضه می گردند چنین بنظر می رسد که بهتر است نامگذاری این دو نیز به یکدیگر مرتبط باشند.
در اصل نسخه C# مربوط می شود به کامپایلر نه به framework. بعنوان مثال شما می توانید VS2008 را با C#3.5 بروری .NET2.0، 3.0 و 3.5 اجرا نمایید.نامگذاری C#، نسخه کد و امکانات موجود را توصیف می کند( مانند ANCI C89,C90,C99در زبان C).
با نگاهی به وب سایت http://www.mono-project.com مشاهده می کنید که mono 2.0 (که بیشتر نسخه 2.0 از .NET را برای ECMA پیاده سازی کرده است)، سینتکس(syntax) و امکانات C# 3.0 را پشتیبانی می نماید.

toggle preview



آموزش زبان برنامه نویسی C#
آموزش jquery
آموزش برنامه نویسی
آموزش طراحی وبسایت
آموزش مدیریت وبسایت
آموزش جاوا Java
آموزش پایتون Python
آموزش سی شارپ C#‎
آموزش HTML و CSS
آموزش JavaScript جاوااسکریپت
آموزش jQuery جی کوئری
آموزش ساخت ربات تلگرام
آموزش برنامه‌نویسی PHP
آموزش برنامه‌نویسی اندروید
● آموزش‌های رایگان

سوالات مرتبط

راهنمای استفاده از ویرایشگر
  • *ایتالیک*‌ یا __ایتالیک__
  • **ضخیم** یا __ضخیم__
  • آدرس:[متن](http://url.com/ "عنوان")
  • عکس?![alt متن](/path/img.jpg "عنوان")
  • لیست عددی: 1. Foo 2. Bar
  • برای رفتن به خط بعد، هر جا مایلید که خط جدید شروع شود دو کاراکتر فاصله (space) قرار دهید
  • تگ‌های ساده HTML هم پشتیبانی می‌شوند

تگها:
این سوال را دنبال کنیدتوسط ایمیل: ایمیل شما (باید معتبر باشد, هرگز به دیگران نمایش داده نمیشود):

هنگامی که شما به سیستم وارد شوید،قادر خواهید بود برای بروز رسانی ها مشترک شوید.


توسط RSS:

پاسخها

پاسخها و نظرها