C# là một ngôn ngữ lập trình hướng đối tượng được phát triển bởi Microsoft, 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 Basic, Delphi 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 Pascal, Delphi, J++, WFC.
Mục lục |
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, v.v, 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:
interface trừu tượng (abstract interfaces). Chức năng này làm đơn giản hóa sự thực thi của thời gian thực thi.int[] a = new int[5]" thay vì "int a[5]").Trong C# 3.0, sẽ có vài bổ sung cơ bản sau:
Customer c = new Customer(); c.Name="James"; trở thành Customer c = new Customer { Name="James" };listOfFoo.Where(delegate(Foo x) { return x.size>10;}) trở thành listOfFoo.Where(x => x.size>10);var x = "hello"; có thể hoán đổi với string x = "hello";Xem thêm về C# 3.0 tại trang web của MSDN.
.NET Framework là một thư viện class có thể được sử dụng với một ngôn ngữ .NET để thực thi các việc từ thao tác chuỗi cho đến phát sinh ra các trang web động (ASP.NET), phân tích XML và reflection. .NET Framework được tổ chức thành tập hợp các namespace, nhóm các class có cùng chức năng lại với nhau, thí dụ như System.Drawing cho đồ hoạ, System.Collections cho cấu trúc dữ liệu và System.Windows.Forms cho hệ thống Windows Forms.
Cấp cao hơn nữa được cung cấp bởi khái niệm này là assembly. Một assembly là một file hoặc nhiều file được liên kết với nhau (thông qua file al.exe), chứa đựng nhiều namespace và object. Các chương trình cần các các lớp để thực thi một chức năng đặc biệt nào đó sẽ tham chiếu các assembly chẳng hạn như System.Drawing.dll và System.Windows.Forms.dll cũng như các core library (lưu trong file mscorlib.dll).
Dưới đây là một chương trình C# rất đơn giản, với thí dụ "Hello World" kinh điển:
Chương trình này sẽ viết chuỗi Hello World! ra màn hình console. Mỗi dòng code có một mục đích đặc biệt, chi tiết như sau:
Đây là định nghĩa lớp. public, nghĩa là các đối tượng trong project khác có thể tự do sử dụng lớp này. Tất cả thông tin trong dấu ngoặc móc mô tả về lớp này.
Đây là điểm vào của chương trình. Nó có thể được gọi từ đoạn code khác với cú pháp ExampleClass.Main(). (The public static void portion is a subject for a slightly more advanced discussion.)
| Các ngôn ngữ lập trình chính (xem thêm) (bổ sung) | |||
|
Dùng cho kỹ nghệ: ABAP | Ada | AWK | BASH | Assembly | C | C++ | C# | Delphi | DHTML | Fortran | Java | JavaScript | Lisp | Objective-C | Perl | PHP | ASP | ASP.NET | PL/SQL | Python | Ruby | SAS | sed | Smalltalk | Tcl | sh | Visual Basic | VBScript | VBA | VB.NET | Scheme | HTML | XML
|