C# là gì?

C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ kỹ sư của Microsoft vào năm 2000. C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java.

Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành.
Trong các ứng dụng sử dụng .NET Framework, mã nguồn chương trình (C#, VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language).

Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành. Hình bên dưới thể hiện quá trình chuyển đổi MSIL code thành native code.

C# với sự hỗ trợ mạnh mẽ của .NET Framework giúp cho việc tạo một ứng dụng Windows Forms hay WPF (Windows Presentation Foundation), phát triển game, ứng dụng Web, ứng dụng Mobile trở nên rất dễ dàng.

Đặc trưng của ngôn ngữ lập trình C# là gì?

C# là ngôn ngữ đơn giản

C# loại bỏ một vài sự phức tạp và rối rắm của những ngôn ngữ như Java và c++, bao gồm việc loại bỏ những macro, những template, đa kế thừa, và lớp cơ sở ảo (virtual base class).
Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++. Nếu chúng ta thân thiện với C và C++ hoặc thậm chí là Java, chúng ta sẽ thấy C# khá giống về diện mạo, cú pháp, biểu thức, toán tử và những chức năng khác được lấy trực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngôn ngữ đơn giản hơn.

C# là ngôn ngữ hiện đại

Điều gì làm cho một ngôn ngữ hiện đại? Những đặc tính như là xử lý ngoại lệ, thu gom bộ nhớ tự động, những kiểu dữ liệu mở rộng, và bảo mật mã nguồn là những đặc tính được mong đợi trong một ngôn ngữ hiện đại. C# chứa tất cả những đặc tính trên. Nếu là người mới học lập trình có thể chúng ta sẽ cảm thấy những đặc tính trên phức tạp và khó hiểu. Tuy nhiên, cũng đừng lo lắng chúng ta sẽ dần dần được tìm hiểu những đặc tính qua các nội dung khoá học này.

C# là một ngôn ngữ lập trình thuần hướng đối tượng

Lập trình hướng đối tượng (OOP: Object-oriented programming) là một phương pháp lập trình có 4 tính chất. Đó là tính trừu tượng (abstraction), tính đóng gói (encapsulation), tính đa hình (polymorphism) và tính kế thừa (inheritance). C# hỗ trợ cho chúng ta tất cả những đặc tính trên.

C# là một ngôn ngữ ít từ khóa

C# là ngôn ngữ sử dụng giới hạn những từ khóa. Phần lớn các từ khóa được sử dụng để mô tả thông tin. Chúng ta có thể nghĩ rằng một ngôn ngữ có nhiều từ khóa thì sẽ mạnh hơn. Điều này không phải sự thật, ít nhất là trong trường hợp ngôn ngữ C#, chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sử dụng để làm bất cứ nhiệm vụ nào.

Các phiên bản C#

Version Language specification Date .NET Version Visual Studio
Ecma ISO/IEC Microsoft
Version C# 1.0 December 2002 April 2003 January 2002 January 2002 .NET Framework 1.0 Visual Studio .NET 2002
Version C# 1.1
C# 1.2
October 2003 April 2003 .NET Framework 1.1 Visual Studio .NET 2003
Version C# 2.0 June 2006 September 2006 September 2005[c] November 2005 .NET Framework 2.0
.NET Framework 3.0
Visual Studio 2005
Visual Studio 2008
Version C# 3.0 None August 2007 November 2007 .NET Framework 2.0 (Except LINQ)[40]
.NET Framework 3.0 (Except LINQ)[40]
.NET Framework 3.5
Visual Studio 2008
Version C# 4.0 April 2010 April 2010 .NET Framework 4 Visual Studio 2010
Version C# 5.0 December 2017 December 2018 June 2013 August 2012 .NET Framework 4.5 Visual Studio 2012
Visual Studio 2013
Version C# 6.0 None Draft July 2015 .NET Framework 4.6
.NET Core 1.0
.NET Core 1.1
Visual Studio 2015
Version C# 7.0 Specification proposal March 2017 .NET Framework 4.7 Visual Studio 2017 version 15.0
Version C# 7.1 Specification proposal August 2017 .NET Core 2.0 Visual Studio 2017 version 15.3[41]
Version C# 7.2 Specification proposal November 2017 Visual Studio 2017 version 15.5[42]
Version C# 7.3 Specification proposal May 2018 .NET Core 2.1
.NET Core 2.2
.NET Framework 4.8
Visual Studio 2017 version 15.7[42]
Version C# 8 Specification proposal September 2019 .NET Core 3.0 Visual Studio 2019 version 16.3[42

Nền tảng .NET

  • .NET Framework được Microsoft đưa ra chính thức từ năm 2002. .NET Framework chỉ hoạt động trên Windows. Những nền tảng ứng dụng như WPF, Winforms, ASP.NET(1-4) hoạt động dựa trên .NET Framework.
  • Mono là phiên bản cộng đồng nhằm mang .NET đến những nền tảng ngoài Windows. Mono được phát triển chủ yếu nhằm xây dựng những ứng dụng với giao diện người dùng và được sử dụng rất rộng rãi: Unity Game, Xamarin…
  • Cho đến năm 2013, Microsoft định hướng đi đa nền tảng và phát triển .NET core. .NET core hiện được sử dụng trong các ứng dụng Universal Windows platform và ASP.NET Core. Từ đây, C# có thể được sử dụng để phát triển các loại ứng dụng đa nền tảng trên các hệ điều hành khác nhau (Windows, Linux, MacOS,…)

TÌM HIỂU VỀ KHÓA HỌC .NET TẠI CODEGYM – TRỞ THÀNH LẬP TRÌNH VIÊN CHUYÊN NGHIỆP TRONG VÒNG 6 THÁNG


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.