Pertanyaan Apa nomor versi yang benar untuk C #?


Apa nomor versi yang benar untuk C #? Apa yang keluar kapan? Mengapa saya tidak dapat menemukan jawaban tentangnya C # 3.5?

Pertanyaan ini terutama untuk membantu mereka yang mencari jawaban menggunakan nomor versi yang salah, mis. C # 3.5. Harapannya adalah bahwa siapa pun yang gagal menemukan jawaban dengan nomor versi yang salah akan menemukannya ini pertanyaan dan kemudian cari lagi dengan nomor versi yang benar.


2061


asal


Jawaban:


Sejarah versi bahasa C #:

Ini adalah versi C # diketahui tentang pada saat penulisan ini:

Menanggapi pertanyaan OP:

Apa nomor versi yang benar untuk C #? Apa yang keluar kapan? Mengapa saya tidak dapat menemukan jawaban tentang C # 3.5?

Tidak ada hal seperti C # 3.5 - penyebab kebingungan di sini adalah bahwa C # 3.0 hadir dalam .NET 3.5. Bahasa dan kerangka ini diversi secara independen, bagaimanapun - seperti CLR, yang pada versi 2.0 untuk. NET 2.0 hingga 3.5, .NET 4 memperkenalkan CLR 4.0, paket layanan meskipun. CLR dalam .NET 4.5 memiliki berbagai perbaikan, tetapi versi tidak jelas: di beberapa tempat dapat disebut sebagai CLR 4.5 (halaman MSDN ini digunakan untuk merujuk ke sana, misalnya), tetapi Environment.Version properti masih melaporkan 4.0.xxx.

Informasi lebih rinci tentang hubungan antara bahasa, runtime dan versi kerangka tersedia di C # dalam Kedalaman situs. Ini termasuk informasi tentang fitur C # 3.0 yang dapat Anda gunakan ketika menargetkan .NET 2.0. (Jika ada yang ingin membawa semua konten ke dalam jawaban wiki ini, mereka dipersilakan.)

Sejak 3 Mei 2017, Tim Bahasa C # membuat riwayat versi C # dan fitur-fitur di repositori github mereka: Fitur Ditambahkan dalam C # Versi Bahasa. Ada juga halaman yang melacak fitur bahasa yang akan datang dan yang baru saja diimplementasikan.


2394



Masalah terbesar ketika berhadapan dengan nomor versi C # adalah fakta bahwa itu tidak terikat pada versi. NET Framework, yang tampaknya disebabkan oleh rilis tersinkronisasi antara Visual Studio dan .NET Framework.

Versi C # sebenarnya terikat pada compiler, bukan frameworknya. Misalnya, dalam Visual Studio 2008 Anda dapat menulis C # 3.0 dan target .NET Framework 2.0, 3.0 dan 3.5. Nomenklatur C # 3.0 menguraikan versi sintaks kode dan fitur yang didukung dengan cara yang sama ANSI C89, C90, C99 deskripsikan kode sintaks / fitur untuk C.

Melihat Mono, dan Anda akan melihat bahwa Mono 2.0 (kebanyakan menerapkan versi 2.0 dari .NET Framework dari spesifikasi ECMA) mendukung sintaks dan fitur C # 3.0.


241



Ini sama dengan sebagian besar jawaban di sini, tetapi ditabulasikan untuk kemudahan, dan memiliki Visual Studio dan. NET versi untuk kelengkapan.

╔════════════╦════════════╦══════════════╦═════════════╦══════════════╗
║ 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   ║
╚════════════╩════════════╩══════════════╩═════════════╩══════════════╝

Catatan: .NET development cukup independen dari VS hari ini, tidak ada korelasi antara versi masing-masing. Lihat: https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependenciesuntuk lebih.


176



  • C # 1.0 dengan Visual Studio.NET

  • C # 2.0 dengan Visual Studio 2005

  • C # 3.0 dengan Visual Studio 2008

  • C # 4.0 dengan Visual Studio 2010

  • C # 5.0 dengan Visual Studio 2012

  • C # 6.0 dengan Visual Studio 2015

  • C # 7.0 dengan Visual Studio 2017


164



VERSI_____SPESIFIKASI BAHASA______KOMPUTER MICROSOFT

C # 1.0/1.2____Desember 2001?/ 2003?___________Januari 2002?

C # 2.0_______September 2005________________November 2005?

C # 3.0_______Mei 2006_____________________November 2006?

C # 4.0_______Maret 2009 (konsep)______________April 2010?

C # 5.0; dirilis dengan .NET 4.5 pada bulan Agustus 2012

C # 6.0; dirilis dengan .NET 4.6 2015

C # 7.0; dirilis dengan .NET 4.7 2017


64



Anda dapat memeriksa versi C # terbaru sini C# Versions


37



C # Version History:

C # adalah bahasa pemrograman berorientasi objek yang sederhana dan kuat yang dikembangkan oleh Microsoft.

C # telah banyak berkembang sejak rilis pertama pada tahun 2002. C # diperkenalkan dengan .NET Framework 1.0.

Tabel berikut mencantumkan fitur-fitur penting yang diperkenalkan di setiap versi C #.

Enter image description here

Dan versi C # terbaru tersedia di C # Versi.


35



Saya telah meringkas sebagian besar versi dalam tabel ini. Satu-satunya yang hilang harus versi ASP.NET Core. Saya juga telah menambahkan berbagai versi ASP.NET MVC.

Perhatikan bahwa ASP.NET 5 telah berganti nama menjadi ASP.NET Core 1.0 dan ASP.NET MVC 6 telah berganti nama menjadi ASP.NET Core MVC 1.0.0. Saya yakin perubahan ini terjadi sekitar Januari 2016.

Saya telah menyertakan tanggal rilis ASP.NET 5 RC1 dalam tabel, tapi saya belum memasukkan ASP.NET core 1.0 dan versi inti lainnya, karena saya tidak dapat menemukan tanggal rilis yang tepat. Anda dapat membaca lebih lanjut tentang tanggal rilis tentang ASP.NET Core di sini: Kapan ASP.NET Core 1.0 (ASP.NET 5 / vNext) dijadwalkan untuk rilis?

Version


33



Membandingkan artikel MSDN "Apa yang Baru di Bahasa dan Kompiler C # 2.0" dan "Apa yang Baru di Visual C # 2005", adalah mungkin untuk menyimpulkan bahwa" C # major_version.minor_version "diciptakan sesuai dengan penomoran versi kompiler.

Ada C # 1.2 sesuai dengan .NET 1.1 dan VS 2003 dan juga dinamakan sebagai Visual C # .NET 2003.

Tetapi lebih jauh lagi di Microsoft berhenti untuk menaikkan nomor versi minor (setelah titik) atau untuk memilikinya selain nol, 0. Meskipun harus dicatat bahwa C # berhubungan dengan .NET 3.5 diberi nama di msdn.microsoft.com sebagai "Visual C # 2008 Paket Layanan 1".

Ada dua penamaan paralel: Dengan penomoran versi .NET / compiler dan dengan penomoran Visual Studio.

C # 2.0 adalah sinonim untuk Visual C # 2005

C # 3,0 sesuai (atau, lebih tepatnya, dapat menargetkan) ke:


25