GIỚI THIỆU VỀ C# / C-SHARP

Nguồn: https://vi.wikipedia.org/wiki/C_Sharp_(ngôn_ngữ_lập_trình)

C# (C Sharp, đọc là "xi-sáp") là một ngôn ngữ lập trình hướng đối tượng đa năng, mạnh mẽ được phát triển bởi Microsoft, C# là phần khởi đầu cho kế hoạch .NET của họ. Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo ECMA là C#, chỉ bao gồm dấu số thường. Microsoft phát triển C# dựa trên C++ và Java. C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual BasicDelphi và Java.

C# được thiết kế chủ yếu bởi Anders Hejlsberg kiến trúc sư phần mềm nổi tiếng với các sản phẩm Turbo PascalDelphi, J++, WFC. Phiên bản gần đây nhất là 9.0, được phát hành vào năm 2020 cùng với Visual Studio 2019 phiên bản 16.8

Mục tiêu của việc phát triển C#

Tiêu chuẩn ECMA liệt kê các mục tiêu của việc thiết kế ngôn ngữ C#

Ứng dụng của C#

Đặc điểm ngôn ngữ

C# theo một hướng nào đó, là ngôn ngữ lập trình phản ánh trực tiếp nhất đến .NET Framework mà tất cả các chương trình.NET chạy, và nó phụ thuộc mạnh mẽ vào framework này. Mọi dữ liệu cơ sở đều là đối tượng, được cấp phát và hủy bỏ bởi trình dọn rác Garbage-Collector (GC), và nhiều kiểu trừu tượng khác chẳng hạn như class, delegate, interface, exception... phản ánh rõ ràng những đặc trưng của.NET runtime.

So sánh với C và C++, ngôn ngữ này bị giới hạn và được nâng cao ở một vài đặc điểm nào đó, nhưng không bao gồm các giới hạn sau đây:

Đặc trưng của ngôn ngữ C#

Lịch sử

Từ C và âm nhạc đến C#

Cái tên "C sharp" được lấy cảm hứng từ ký hiệu âm nhạc, trong đó một dấu thăng sau nốt nhạc "#" nghĩa là một nốt được chơi cao hơn nửa cung. Điều này tương tự như trường hợp đặt tên của ngôn ngữ của C++, trong đó "++" chỉ ra rằng giá trị của một biến nên được tăng lên 1. Biểu tượng # cũng giống với bốn ký tự "+" (trong một lưới 2x2), ngụ ý rằng ngôn ngữ là một phiên bản tăng cường của C++ (gấp đôi C++). Bởi vì giới hạn kỹ thuật của việc hiển thị (các font chuẩn, trình duyệt...) và sự thật là ký tự thăng (U+266F ♯ MUSIC SHARP SIGN (HTML ♯)) không hiện diện trong đa số các bàn phím, ký tự (U+0023 # NUMBER SIGN (HTML #)) đã được chọn để diễn đạt một cách tương đương trong cách viết tên ngôn ngữ.

Hậu tố "#" đã được sử dụng bởi một số ngôn ngữ khác của.NET là các biến thể của các ngôn ngữ hiện tại, bao gồm J# (một ngôn ngữ.NET cũng được thiết kế bởi Microsoft có nguồn gốc từ Java 1.1), A# (từ Ada) và ngôn ngữ lập trình chức năng F#. Việc triển khai ban đầu của Eiffel for.NET được gọi là Eiffel#. Hậu tố cũng đã được sử dụng cho các thư viện, chẳng hạn như Gtk# (một wrapper NET cho GTK+ và các thư viện GNOME khác) và Cocoa#.

Các phiên bản (versions)

Phiên bản Đặc tả ngôn ngữ Ngày phát hành .NET Framework Visual Studio
ECMA ISO/IEC Microsoft
C# 1.0 Tháng 12 năm 2002 Tháng 4 năm 2003 Tháng 1 năm 2002 Tháng 1 năm 2002 .NET Framework 1.0 Visual Studio.NET 2002
C# 1.1
C# 1.2
Tháng 10 năm 2003 Tháng 4 năm 2003 .NET Framework 1.1 Visual Studio.NET 2003
C# 2.0 Tháng 6 năm 2006 Tháng 9 năm 2006 Tháng 9 2005[note 2] Tháng 11 năm 2005 .NET Framework 2.0 Visual Studio 2005
C# 3.0 Không[note 3] Tháng 8 năm 2007 Tháng 11 năm 2007

.NET Framework 2.0 (Except LINQ)
.NET Framework 3.0 (Except LINQ)
.NET Framework 3.5

Visual Studio 2008
Visual Studio 2010
C# 4.0 Tháng 4 năm 2010 Tháng 4 năm 2010 .NET Framework 4 Visual Studio 2010
C# 5.0 Trong quá trình Không[note 4] Tháng 6 năm 2013 Tháng 8 năm 2012 .NET Framework 4.5 Visual Studio 2012
Visual Studio 2013
C# 6.0 Không[note 5] Bản nháp Tháng 7 năm 2015 .NET Framework 4.6 Visual Studio 2015
C# 7.0 Không Tháng 3 năm 2017 .NET Framework 4.6.2 Visual Studio 2017
C# 7.1 Không Không Không Tháng 8 năm 2017 .NET Framework 4.6.2 Visual Studio 2017 phiên bản 15.3
C# 7.2 Không Không Không Tháng 11 năm 2017 .NET Framework 4.7.1 Visual Studio 2017 phiên bản 15.5
C# 7.3 Không Tháng 5 năm 2018 Tháng 5 năm 2018 .NET Core 2.1

.NET Core 2.2

.NET Framework 4.8

Visual Studio 2017 phiên bản 15.7
C# 8.0 Tháng 9 năm 2019 Tháng 9 năm 2019 .NET Core 3.0 Visual Studio 2019 phiên bản 16.3
C# 9.0     Tháng 11 năm 2020 13 Tháng 11 năm 2020 .NET 5.0 Visual Studio 2019 phiên bản 16.8